2

В поисках более дешевого решения, чем amazon CloudFront, я поместил две записи "A" с разными IP-адресами на разные серверы в одном и том же поддомене в NameSever, управляемом GoDaddy, для достижения некоторого механизма балансировки нагрузки и отработки отказа для статических файлов в моем Веб-сайт.

Проверьте это: nslookup static.hsbnoticias.com

НЕКОТОРЫЕ НАБЛЮДЕНИЯ

  • Я видел несколько статей о балансировке нагрузки циклического перебора DNS, но не смог понять, можно ли это сделать с какой-либо службой DNS или для нее требуется специальное программное обеспечение или служба.
  • Я не нашел поставщиков услуг для такой услуги
  • Тестирование nslookup на Facebook CDN возвращает несколько IP-адресов в разном порядке каждый раз, что, как мне кажется, является правильным способом балансировки нагрузки на DNS.
  • Мой NameServer возвращает IP-адреса в том же порядке каждый раз

ВОПРОСЫ

  1. Будет ли нагрузка распределена между двумя серверами?
  2. Существует ли стандартное поведение, которому должны следовать браузеры при разрешении доменов с несколькими IP-адресами на ресурсах страницы? (Тайм-аут, запасной вариант и т.д.)
  3. Как случайный (или фиксированный) порядок записей, возвращаемых сервером имен, влияет на балансировку нагрузки?
  4. Будет ли браузер пробовать разные IP-адреса, когда тот, который они используют, становится медленным или только когда срабатывает тайм-аут?
  5. Будет ли IP Fail Over прозрачным для пользователя, или пользователю потребуется перезагрузить страницу?

1 ответ1

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

  2. Не последовательно, нет. Все они будут откатываться на второй (или более) IP-адрес, но это зависит от "поставщика" и версии браузера и от того, будут ли возвращены какие-либо недоступные сообщения ICMP, чтобы определить, сколько времени занимает этот откат. Тайм-ауты TCP - без получения сообщений ICMP о недоступности - обычно измеряются в минутах, когда сервер не отвечает. Например, Chrome имеет длительное время ожидания подключения, часто более 3 минут, прежде чем переключаться при сбое. IE быстрее. Но пользователю это покажется неактивным или очень медленным. Caveat emptor ... есть много движущихся частей вдоль путей разрешения DNS, и у вас мало контроля над порядком, в котором несколько возвращенных IP-адресов, наконец, используются в данном браузере. Вот почему существует целая индустрия продуктов, которые поддерживают быструю балансировку нагрузки при отказоустойчивости, но они обычно используют DNS для достижения этого минимальным образом (например, поиск www.google.com в DNS ... вы найдете вас верните только ОДИН IP-адрес.)

  3. "Балансировка" нагрузки на серверы может значительно различаться в течение любых двух периодов времени.

  4. Только по таймауту подключения или явно недоступно.

  5. Он будет прозрачным, но сайт может показаться очень медленным, если экземпляр IP, к которому они подключаются, завис. Если вы намеренно отключите его (например, для технического обслуживания), откат будет быстрее, если он не подключен к сети, а запросы ARP не будут обработаны (маршрутизатор сообщит о том, что узел ICMP недоступен).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .