Время простоя подключения к серверу Apache - PullRequest
1 голос
/ 14 октября 2011

Я открываю сокет-соединение с сервером Apache, но не отправляю запросов, ожидающих определенного времени, чтобы сделать это.Как долго я могу ожидать, что Apache будет поддерживать это соединение в режиме ожидания?

Ситуация такова, что сервер Apache имеет ограниченные ресурсы, и соединения должны быть выделены заранее, прежде чем все они исчезнут.

После отправки запроса сервер объявляет свою политику тайм-аута:

KeepAlive: тайм-аут = 15, макс. = 50

Если последующий запрос отправляется дольше 15 секунд, он получает сообщение об ошибке «соединение с сервером закрыто».Таким образом, это обеспечивает соблюдение политики.

Однако, похоже, что если после открытия соединения никакие запросы не отправляются, Apache не закроет его даже в течение 10 минут.

Может ли кто-нибудь пролить свет на поведение Apache в такой ситуации?ситуация.

1 Ответ

4 голосов
/ 15 октября 2011

Согласно Базовым функциям Apache, директиве TimeOut время ожидания по умолчанию составляет 300 секунд, но его можно настроить.

Для соединений keep-alive (после первого запроса) время ожидания по умолчанию составляет 5 секунд (см. Основные функции Apache, директива KeepAliveTimeout ). В Apache 2.0 значением по умолчанию было 15 секунд . Это также настраивается.

Кроме того, есть mod_reqtimeout Модуль Apache , который обеспечивает некоторые параметры тонкой настройки.

Я не думаю, что любое из упомянутых значений доступно для клиентов http через заголовки http или любые другие формы. (За исключением значения keep-alive, конечно.)

...