Talk:Nginx

http://viert.org.ru/blog/view/masshtabirovanie_i_balansirovanie_nagruzki  TTP-балансирование спасает нас от вышеописанных неприятных эффектов. Reverse proxy на основе того же nginx почти не потребляет ресурсы, стабильно работает и умеет отсекать не только недоступные хосты, но и хосты, работающие некорректно, по HTTP-коду ответа. Еще одним плюсом является возможность показать легковесную fail-страничку вроде "чашки" Моего Круга, предлагающей Вам попить кофе, пока на сервисе ведутся технические работы. Пример простой конфигурации nginx выглядит так:

upstream my_example_com { server my1.example.com max_fails=1 fail_timeout=10s; server my2.example.com max_fails=1 fail_timeout=10s; server my3.example.com max_fails=1 fail_timeout=10s; server fail.example.com backup; }

server { listen 80; server_name my.example.com location / { proxy_pass http://my_example_com; proxy_set_header Host my.example.com; proxy_set_header X-Real-IP $remote_addr; }   }

Минусы этого решения - единая точка отказа в виде одиноко стоящей прокси. Ну и ограниченность ресурсов в этом месте понятна: весь поток пользовательских запросов проходит через один единственный хост. Конечно, никакой логики, кроме проксирования, на этом хосте нет, но и масштабировать его штатными средствами не получится. Рано или поздно с ростом нагрузки мы можем упереться в эту точку отказа. 