Zeitüberschreitung für mod_proxy_ajp-Verbindungen erhöhen

7

Ich habe meinen Apache (2.2.3) mit Tomcat 6 sprechen lassen. Etwas über mod_proxy_ajp.

Ich habe einige lächerlich langlebige Anfragen (2-6 Minuten) und ich denke, wir haben irgendwo ein Standard-Timeout ... wo ist der richtige Ort, um das zu verbessern?

hier ist mein Proxy def:

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

Antworten:

12

Ich kann nicht sagen , dass ich das versucht habe, aber ich war in der Frage interessiert, so dass ich ein wenig googeln um tat und fand dies :


ProxyTimeout-Direktive

Mit dieser Anweisung kann ein Benutzer ein Zeitlimit für Proxy-Anforderungen festlegen. Dies ist nützlich, wenn Sie einen langsamen / fehlerhaften App-Server haben, der hängt, und Sie lieber nur eine Zeitüberschreitung zurückgeben und ordnungsgemäß fehlschlagen möchten, anstatt zu warten, wie lange der Server für die Rückkehr benötigt.


Der Standardwert ist der Wert der Timeout-Direktive, die standardmäßig 300 Sekunden beträgt. Versuchen Sie also, ProxyTimeout zu starten, und prüfen Sie, ob es hilft.

PS Beachten Sie, dass Tomcat möglicherweise auch eigene Zeitüberschreitungen hat. Dieses Dokument enthält einige weitere Informationen (obwohl ich keine persönlichen Erfahrungen mit diesen Einstellungen habe).

Matt Solnit
quelle
7

Wenn Sie das Zeitlimit nur für den Ajp-Proxy und nicht global ändern möchten, können Sie den Parameter "Zeitlimit" wie folgt hinzufügen:

<Location /blah>
  ProxyPass ajp://localhost:8010/blah timeout=600
  ProxyPassReverse ajp://localhost:8010/blah
</Location>
AndrewR
quelle