Увеличение времени ожидания для соединений mod_proxy_ajp

У меня есть apache (2.2.3), разговаривающий с tomcat 6. что-то через mod_proxy_ajp.

У меня есть несколько смехотворно долгоживущих запросов (2-6 минут), и я думаю, что мы где-то установили тайм-аут по умолчанию... где правильное место, чтобы увеличить это?

вот мой прокси def:

<Location /blah>
  ProxyPass ajp://localhost:8010/blah
  ProxyPassReverse ajp://localhost:8010/blah
</Location>

2 ответа

Решение

Не могу сказать, что попробовал это, но меня заинтересовал вопрос, поэтому я немного погуглил и нашел вот что:


Директива ProxyTimeout

Эта директива позволяет пользователю указать время ожидания для запросов прокси. Это полезно, когда у вас медленный / глючный сервер приложений, который зависает, и вы бы предпочли просто вернуть тайм-аут и изящно потерпеть неудачу, а не ждать, сколько бы времени не понадобилось серверу для возврата.


Значением по умолчанию является значение директивы Timeout, которая по умолчанию по умолчанию равна 300 секундам. Поэтому попробуйте увеличить ProxyTimeout и посмотреть, поможет ли это.

PS Имейте в виду, что у Tomcat тоже могут быть свои тайм-ауты. Этот документ содержит дополнительную информацию (хотя, имейте в виду, у меня нет личного опыта работы с этими настройками).

Если вы хотите изменить время ожидания только для прокси-сервера ajp, а не глобально, вы можете добавить параметр "timeout", например, так:

<Location /blah>
  ProxyPass ajp://localhost:8010/blah timeout=600
  ProxyPassReverse ajp://localhost:8010/blah
</Location>
Другие вопросы по тегам