IIS 6.0 で Web アプリケーションを使用しています。大量の短時間リクエスト (処理時間 15 ~ 30 ミリ秒) を常に処理します。いくつか (1 ~ 10) の長時間のリクエストが発生すると、すべての短時間のリクエストの速度が低下します (最大 2000 ~ 6000 ミリ秒の処理時間と、一部のリクエストでは 100000 を超える)。
IIS でリクエスト間の分離のようなものがあるべきですか? あるリクエストが別のリクエストを中断してはならないということは想定されていませんか?
IIS ログでは次のようになります。
[Normal work]
cs-host sc-status sc-substatus sc-win32-status sc-bytes cs-bytes time-taken
192.168.1.7 200 0 0 2394 524 734
192.168.1.7 200 0 0 2394 524 0
192.168.1.7 200 0 0 2394 524 0
192.168.1.7 200 0 0 2394 524 15
192.168.1.7 200 0 0 2394 524 15
192.168.1.7 200 0 0 2394 524 0
192.168.1.7 200 0 0 2394 524 0
192.168.1.7 200 0 0 2394 524 15
192.168.1.7 200 0 0 2394 524 46
[Slowdown]
cs-host sc-status sc-substatus sc-win32-status sc-bytes cs-bytes time-taken
192.168.1.7 200 0 64 0 522 508251
192.168.1.7 200 0 64 0 522 91827
192.168.1.7 200 0 64 0 522 386438
192.168.1.7 200 0 64 0 522 445947
192.168.1.7 200 0 0 178 522 35545
192.168.1.7 200 0 64 0 522 274130
sc-win32-status 64 は、「指定されたネットワークは使用できなくなりました」を意味しますが、切断はありませんでした。IISTuner ( http://iistuner.codeplex.com/ ) などのツールを使用して IIS を調整しようとしましたが、効果がありません。
- なぜそのような状況が起こるのですか?
- それをトラブルシューティングする方法は?