Apache MaxClients, когда KeepAlive выключен - PullRequest
3 голосов
/ 11 июня 2009

с apache, разумно ли уменьшать MaxClients, когда KeepAlive равно Off? в настоящее время MaxClients установлено на 150, что является значением по умолчанию для mpm-worker.

  • nginx предоставляет статические файлы и обратные прокси-серверы для Apache
  • мы в среднем получаем около 12-15 запросов в секунду
  • средняя загрузка процессора никогда не превышает 0.8 на четырехъядерном процессоре

спасибо!

1 Ответ

9 голосов
/ 25 июня 2009

Отсутствие поддержки соединений в реальном времени означает, что технически можно отбросить MaxClients. Это связано с тем, что потоки обработчика запросов в Apache не будут связаны, ожидая, будет ли последующий запрос по тому же соединению. Таким образом, вы получите лучшее использование доступных потоков обработчика запросов и, возможно, не будете нуждаться в таком количестве.

Также стоит знать, что если весь трафик поступает через nginx, то nginx реализует только HTTP / 1.0 в своем прокси-модуле, а также не поддерживает запросы поддержки активности через прокси-соединение. Таким образом, использование keep alive на стороне Apache бессмысленно при использовании nginx перед ним. Поскольку nginx не поддерживает поддержку активности, он должен быстро разорвать соединения, поскольку не намерен их повторно использовать, поэтому вы не должны страдать, если забудете отключить поддержку активности в Apache при использовании nginx в качестве внешнего интерфейса.

То, что прокси-сервер nginx поддерживает только HTTP / 1.0 и не использует keep alive, упоминается в документации к прокси:

http://wiki.nginx.org/NginxHttpProxyModule

...