Apache(2.2.3)がmod_proxy_ajpを介してTomcat 6.somethingと通信しています。
途方もなく長い存続期間のリクエスト(2〜6分)があり、どこかでデフォルトのタイムアウトに達していると思います...それを上げる適切な場所はどこですか?
ここに私のプロキシの定義があります:
<Location /blah>
ProxyPass ajp://localhost:8010/blah
ProxyPassReverse ajp://localhost:8010/blah
</Location>
これを試したとは言えませんが、質問に興味があったので、少しググってみました this :
このディレクティブを使用すると、ユーザーはプロキシー要求のタイムアウトを指定できます。これは、遅い/バギーなappserverがハングしていて、サーバーが戻るのにどれだけ時間がかかるかを待つのではなく、タイムアウトを返して正常に失敗する場合に便利です。
デフォルト値はTimeoutディレクティブの値であり、デフォルトは300秒です。したがって、ProxyTimeoutを増やして、効果があるかどうかを確認してください。
追伸Tomcatにも独自のタイムアウトがある可能性があることに注意してください。 このドキュメント には、もう少し情報があります(ただし、これらの設定に関する個人的な経験はありません)。
グローバルではなくajpプロキシのみのタイムアウトを変更する場合は、次のように「timeout」パラメーターを追加できます。
<Location /blah>
ProxyPass ajp://localhost:8010/blah timeout=600
ProxyPassReverse ajp://localhost:8010/blah
</Location>