Что мы можем сделать, когда балансировщик нагрузки становится узким местом? - PullRequest
3 голосов
/ 16 марта 2019

Я только начал изучать балансировщики нагрузки.Взяв в качестве примера балансировщик нагрузки приложения на стороне сервера (http / https), я предполагаю, что он прослушивает определенный IP-адрес, а затем перенаправляет запросы http доступным серверам на основе своего алгоритма.

Так что это возможно дляБалансировщик нагрузки стать узким местом?Поскольку он прослушивает определенный IP-адрес, все запросы сначала будут направлены на единый балансировщик нагрузки.Поэтому я думаю, что может быть сценарий, в котором объем трафика превышает предел / емкость балансировщика нагрузки.

Когда это становится узким местом, что мы можем сделать?Можем ли мы использовать несколько балансировщиков нагрузки?

Я думаю, что одним из возможных решений является использование нескольких балансировщиков нагрузки и предоставление всех ips клиентам.(Это похоже на балансировку нагрузки на стороне клиента) Поэтому, когда клиент хочет отправить запрос, он может выбрать из пула ip и затем отправить запрос одному из балансировщиков нагрузки.(Например, здесь можно использовать ZooKeeper.) Это рабочее решение?Есть ли другой способ использовать несколько балансировщиков нагрузки?

Спасибо.Этан

1 Ответ

2 голосов
/ 16 марта 2019

Ваше последнее предложение работает с добавлением небольшого изменения: обычный подход заключается в публикации IP-адресов балансировщика нагрузки под тем же доменным именем.

Это называется Балансировка нагрузки DNS .Клиенты будут запрашивать разрешение IP для доменного имени вашего балансировщика нагрузки и получат разные IP-адреса round-robin .

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

...