タイムアウト時間・・・

特定のWEBサーバにクライアントから接続するとかなりの頻度で画面表示が出来なくなっていた。
現象としては
・トップページを表示(これはエラーにならない)
・ログインボタンを押す(ここでエラー表示)
・ブラウザの戻るボタンでトップページに戻る
・ログインボタンを押す(今度は成功)
・画面内のリンクをクリック(ここでもエラーになる)
という流れ。
いろいろ調べている内にプロキシサーバを通す場合に限ってエラーになる頻度が高くなることが判明した。
そこでプロキシのログを細かく見ていくと、Keep Aliveタイムアウトと通信中にWEBサーバ側からコネクションをクローズされたというログが大量に出ていた。
さらにWEB・プロキシ双方のアクセスログを見ていくと、プロキシがクライアントから受け付けたコマンドがWEBサーバに渡っていないことがあるのを発見。
どうもプロキシ側のセッションKeepAlive中に出したリクエストがWEBサーバに渡っていない模様。
で、気付いたのがWEBサーバとプロキシサーバでタイムアウトの時間が異なっていて、WEBサーバ側が短くなっていたこと。
どうもそのせいでプロキシ側はセッションが継続中だと思っているのにWEBサーバ側はセッションがなくなっていると判断して通信が出来なくなっていた模様。
実際にエラーになる操作を一定時間経過後に行うとエラーにならず、即座に行うとほぼ確実にエラーになるので、この推測は正しいと思われる。
双方のタイムアウト時間を同じにしたところエラーが出なくなったので、しばらくはこの状態で様子を見ようと思う。

←クリックしてくれると嬉しいです。
PR

コメントを残す