В настоящее время я настраиваю пул серверов с AWS.Это простая установка с двумя серверами баз данных, масштабируемым массивом серверов и двумя балансировщиками нагрузки.У каждой машины есть резервное переключение при отказе, и все они должны быть достаточно надежными.
Балансировщики нагрузки должны иметь возможность аварийного переключения через DNS Round Robin.Таким образом, в счастливом сценарии обе машины получают удар и распределяют трафик по массиву.Когда один из этих компьютеров не работает, Round Robin DNS в сочетании с повторной попыткой браузера клиента должен сделать так, чтобы браузеры переключали свой целевой хост на компьютер, который все еще работает после истечения времени ожидания.Это не то, что я придумал, но кажется очень хорошим решением.
Проблема, с которой я сталкиваюсь, заключается в следующем.Сдвиг действительно происходит, но не один раз для неудавшегося запроса, а для каждого последующего запроса из того же браузера.Таким образом, простой запрос страницы занимает 21 секунду, после чего все изображения также загружаются за 21 секунду.Весь следующий запрос страницы также занимает много времени.Таким образом, отработка отказа работает, но в то же время совершенно бесполезна.
Вывод из раскопок:
;<< >> DiG 9.6.1-P2 << >> example.com
;;глобальные параметры: + cmd
;;Получил ответ:
;;- >> HEADER << - код операции: QUERY, статус: NOERROR, id: 45224 <br>;;флаги: qr rd ra;ЗАПРОС: 1, ОТВЕТ: 2, ПОЛНОМОЧИЯ: 0, ДОПОЛНИТЕЛЬНО: 0
;;РАЗДЕЛ ВОПРОСА:
; example.com.IN A
;;РАЗДЕЛ ОТВЕТА:
www.example.com.86400 В 1.2.3.4
www.example.com.86400 В 1.2.3.4
;;Время запроса: 31 мсек
;;SERVER: 172.16.0.23 # 53 (172.16.0.23)
;;КОГДА: Понедельник, 20 декабря 12:21:25 2010
;;MSG РАЗМЕР rcvd: 67
Заранее спасибо!
Maarten Hoekstra
Информационные службы Kingsquare