Назад | Перейти на главную страницу

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

Я знаю, как настроить эти решения:

  1. Скажем, сайт www.example.com имеет одиночная машина для него (IP 203.0.113.123), используя сервер Linux + Apache. Это работает, если пропускная способность не слишком высока.

  2. Допустим, теперь у нас есть все больше и больше запросов на этот сайт, таким образом компьютер с IP 203.0.113.123 теперь будет быть только сервером балансировки нагрузки, отправляя запросы множеству рабочих (других компьютеров), которые обслуживают фактические веб-страницы.

но у меня есть вопрос по этому делу:

  1. Допустим, сейчас бывают пики десятки или сотни тысяч запросов в секунду для этого сайта. Наличие единственной машины балансировки нагрузки 203.0.113.123 больше невозможно.

Если у нас есть 10 машин для балансировки нагрузки: 203.0.113.123, 203.0.113.124, 203.0.113.125, 203.0.113.126, 203.0.113.127, ..., 203.0.113.132 (которые отправляют запросы десяткам других рабочих), как клиенты приходят ко всем из них случайным образом / по круговой схеме?

В записях DNS обычно отображается только одна запись A, даже для крупных известных веб-сайтов (см. Вот записи DNS для Google, есть только одна запись A), например:

www.example.com 3600    A   0   203.0.113.123

Как сделать так, чтобы запросы клиентов приходили на десять машин случайным образом, а не только на 203.0.113.123?

(Очевидно, мы не хотим, чтобы одна машина отправляла запросы на десять машин с балансировкой нагрузки, потому что тогда мы вернемся к случаю 2.)