LINUX.ORG.RU
ФорумAdmin

Отказоустойчивая балансировка с минимизацией времени ответа

 


0

2

Есть один nginx (бесплатная редакция) и в нем один апстрим с тремя бэкендами. Очень хотелось бы получить следующее поведение:

  • Если у части бэкендов вырастает время ответа (proxy_read_timeout) выше заданного порога - nginx временно отключает их и продолжает ходить в оставшиеся (fail_timeout, max_fails, вот это все).
  • При этом, если время ответа выросло у всех бэкендов сразу - nginx не должен забанить все доступные бэкенды

Можно ли в принципе реализовать такое стандартными средствами?

★★★

Возьми plus, заюзай least_time и не парься. С max_fails такое построить может и получится, но деньговремени ты грохнешь сильно больше, чем если взять Plus

anonymous
()
Ответ на: комментарий от anonymous

К сожалению, рулить самим nginx'ом возможности нет, только конфигом.

unikoid ★★★
() автор топика

Собирай метрики с самих бекендов и динамически выставляй конфиг бекендов Lua-скриптами.

melkor217 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.