Балансировщик нагрузки

26 декабря 2022
Балансировщик нагрузки — это сервис распределения запросов в кластере, который гарантирует бесперебойное функционирование ИТ-системы, в случае выхода из строя одной из машин.

Балансировщик нагрузки оптимизирует использование ресурсов, уменьшает задержку и предотвращает перегруженность инфраструктуры.

Функции балансировщика

Load Balancer помогает плавно масштабировать ИТ-инфраструктуру.

При горизонтальном масштабировании сервис помогает определить необходимую загруженность для нового сервера в кластере. Если в кластере два сервера, каждый из них получит равномерное количество трафика. Балансировщик обеспечивает гибкость при добавлении или удалении машин, оптимизирует использование ресурсов ИТ-инфраструктуры и ускоряет обслуживание сообщений.

Другая важная функция — обеспечение отказоустойчивости.

Load Balancer отправляет запросы только на те серверы, которые находятся онлайн. Если сервер упадет, сервис распределит задачи среди других элементов ИТ-инфраструктуры. Load Balancer устраняет единую точку отказа, обеспечивая защиту системы и высокий уровень доступности приложений.

Функционально балансировщик похож на обратный прокси-сервер (reverse proxy), который так же выступает посредником между сервером и клиентом.

Алгоритмы балансировщика нагрузки

Load Balancer использует следующие алгоритмы:

  • Round Robin — последовательное распределение запросов по группе серверов;
  • Least Connections — новый запрос получает сервер с самым низким количеством текущих соединений с клиентами. Относительная вычислительная мощность каждого сервера учитывается при определении количества соединений;
  • Sticky Sessions — алгоритм для закрепления пользовательских сессий, который помогает Round Robin и Least Connections. За сессией пользователя закрепляется обработавший его запрос сервер. В случае недоступности первоначального сервера сессия пользователя запустится на другом;
  • Хэш — распределение запросов на основе заданного ключа, например, IP- или URL-адреса;
  • IP-хэш — для определения, какой сервер получает запрос, используется IP-адрес клиента.
Мы используем файлы cookies для оптимизации функциональности сайта и улучшения качества услуг. Нажимая «Принять», вы даете согласие на работу с этими файлами. Чтобы узнать больше, пожалуйста, прочтите нашу Политику конфиденциальности.