TCP балансировка нагрузки

Балансировка обеспечивает высокую доступность системы за счет распределения нагрузки между несколькими компонентами. Использование нескольких компонентов с балансировкой нагрузки вместо одого может увеличить надежность благодаря резервированию. Jelastic использует NGINX для двух видов балансировки нагрузки: TCP и HTTP.

Пользователи могут использовать TCP для балансировки запросов к базам данных, почтовым серверам и другим распределяемым приложениям с сетевой поддержкой. Также Вы можете использовать TCP вместо HTTP, если необходима более быстрая балансировка. В этом случае Вам нужно знать, что такая скорость достигается путём остановки процесса обработки запросов.

Компонент TCP балансировки получает запрос на установку соединения от приложения пользователя через сетевой сокет. Этот компонент определяет, какой сервер окружения получит запрос. Для пересылки данного запроса используется Round Robin алгоритм.

Когда соединение установлено, запрос от пользовательского приложения идет по тому же соединению к выбранному серверу. Приложение не может определять какой сервер выбирается.

Существующее соединение может быть прервано только в случае возникновения некоторой проблемы, например, временного сбоя сети. При следующей отправке запроса создается новое соединение. Это соединение может быть установлено с любым сервером в окружении.

Чтобы использовать TCP балансировку в Вашем окружении Jelastic, следуйте инструкции:

  1. Создайте окружение с двумя или больше серверами приложений (например, Tomcat). В этом случае NGINX будет добавлен автоматически. Обратите также внимание, что Вам нужно включить использование Внешнего IP для сервера NGINX .



  2. Нажмите кнопку Конфигурация для сервера NGNIX в Вашем окружении.



  3. В открывшейся вкладке перейдите в tcpmaps > mappings.xml и укажите frontend и backend порты. Сохраните изменения.

  4. Frontend - это порт, к которому будет подключен пользователь.
    Backend - порт, к которому будет направлен запрос балансировщиком.



  5. Перезапустите сервер NGNIX.
  6. Это всё. Теперь Ваше окружение использует TCP балансировку для серверов Вашего приложения.