У меня возникла проблема с неправильно направленными соединениями после частичного простоя бэкэнда (например, перезапуск приложения).
У меня есть продукты с веб-сокетом, подключенным к бэкенду и конечной точке / products /: productId /который иногда используется для подключений через веб-сокет клиентами ... Nginx настроен на использование балансировщика нагрузки хэша с идентификатором продукта в качестве хэша для направления клиентских подключений к экземпляру серверной части, к которому подключен продукт.
Он работает нормально, пока экземпляр не выйдет из строя (назовем его экземпляром A), после чего nginx распознает серверную часть как сбойную.Продукты немедленно пытаются восстановить соединение и теперь направляются в экземпляр B, где они остаются подключенными.Теперь экземпляр A возвращается, и через некоторое время клиент подключается и направляется к A, но продукт все еще подключен к B.
В качестве решения я ищу способ заставить nginx сброситьсоединение продуктов на B, которые должны быть на A, как только экземпляр A вернется.