Назад | Перейти на главную страницу

Включен или выключен KeepAlive для сервера, обрабатывающего почти исключительно один запрос для каждого клиента?

Рассматриваемый Apache работает на экземпляре Ubuntu-EC2. В основном он обрабатывает около миллиона запросов в час. По сути, клиент будет POST JSON и все - так что взаимодействие клиента с сервером состоит только из этого единственного запроса.

Мое наивное предположение было бы превратить KeepAlive к off затем. Хотя я читал, что поддержание соединения также полезно, если полученные запросы от клиентов очень похожи.

Должен ли я переключиться KeepAlive on или off?

(И поскольку мы уже на этом, я также был бы признателен за предложение / разъяснение по MaxKeepAliveRequests и KeepAliveTimeout)

Я бы сказал, держись подальше. Если вы включите KeepAlive, вы увидите гораздо больше процессов Apache, чем без него.

Также убедитесь, что вы уменьшили TimeOut значение от 300 секунд по умолчанию до гораздо более низкого значения, до 10 секунд или около того.

Поддающийся количественной оценке подход к этому вопросу заключается в регистрации запросов и для каждого «количества запросов поддержки активности, обработанных на этом соединении» (%k) 1.

Чем выше доля запросов с 0 (как в моем случае) тем более вероятно, что переключение KeepAlive off будет выгодно.