Рейтинг:1

Как сбалансировать нагрузку Socket Connections?

флаг cn

У нас есть большой пул устройств, которые устанавливают сокетные соединения с сервером. Соединения — это соединения TCP-сокетов, попадающие на сервер IP: пара портов из пары IP-портов назначения. В автономном режиме нет проблем с ответом на устройства.

Однако по мере увеличения количества устройств мы были вынуждены ввести балансировщик нагрузки, который затем перераспределял бы трафик на различные приемники в бэкенде. Затем получатели обрабатывают информацию и сохраняют ее в базе данных для дальнейшей обработки.

Однако мы не можем отправить ответ ни одному из устройств, поскольку балансировщик нагрузки (прокси-сервер высокой доступности) транслирует пакеты и меняет IP-адрес при отправке пакетов в пул серверов за брандмауэром.

Как мы гарантируем, что соединения не будут потеряны, а ответы будут отправлены обратно на устройства?

Каков правильный способ балансировки нагрузки TCP/IP-соединений и обеспечения того, чтобы на соединения отвечали?

Любая помощь будет оценена.

В настоящее время мы используем HA Proxy. Мы открыты для перехода на любой другой балансировщик нагрузки с открытым исходным кодом. Нам нужен только круговой балансировщик нагрузки.

Michael Hampton avatar
флаг cz
Как именно вы настроили HAProxy?

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.