2009-06-23 1 views
2

IISでホストされているリモーティングを使用するアプリケーションで接続リークが発生しているため、孤立した接続をクリアして指定した時刻にAppPoolリサイクルをスケジュールしました。 IISがすべてのリサイクルを記録し、手動リサイクルコマンドを記録するようにメタベースプロパティを変更しました。このリサイクルがスケジュールに従って行われているという証拠は見られません。IISアプリケーションのプールのリサイクルが指定されたスケジュールを遵守していないように見える

IISがスケジュールを監視するのを止める原因は何ですか?

+0

はどのようにアプリケーションプールがリサイクルされていないことを知っています...、イベントログ内のすべてのアプリケーションプールのイベントを参照してくださいここでの指示に従ってください?プロセスIDは同じままですか? – Kev

+0

これは確認できませんが、手動でリサイクルすると、サーバーからデータベースへの接続数が減少します。予定された時間にそのような低下は起こらない。 – Rikalous

+0

スケジュールされたリサイクル時間の前後にプロセスIDが見えて、間違っていました。スケジュールが確認されています。 – Rikalous

答えて

4

アプリケーションプールリサイクル(スケジュールベース)を実行すると、新しいワーカープロセス(w3wp.exe)が開始されます。既存のワーカープロセスは、既存の要求を処理するために生きていて、それ以上存在しない場合はシャットダウンします。すべての新しい要求は新しいワーカープロセスに送信されます。

リサイクルするアプリケーションプールが新しいw3wp.exeプロセスであるかどうかを確認できます。あなたは、次のIIS管理スクリプトを使用してこれを行うことができます。

c:>iisapp.vbs 
W3WP.exe PID: 5924 AppPoolId: MSSharePointAppPool 
W3WP.exe PID: 2840 AppPoolId: Problem Sites - ASP.NET 2.0 
W3WP.exe PID: 2576 AppPoolId: DefaultAppPool 
W3WP.exe PID: 6076 AppPoolId: ASP.NET 2.0 
W3WP.exe PID: 4916 AppPoolId: Problem Sites - ASP.NET 1.1 

は、彼らが変更かどうかを確認するために前にと予定のリサイクル時間後にプロセスIDのメモしておいてください。

cscriptがデフォルトのWSHスクリプトホストでない場合は、cscript iisapp.vbsを使用する必要があります。 - > [パフォーマンス]タブ

Event Type: Warning 
Event Source: W3SVC 
Event Category: None 
Event ID: 1013 
Date:  22/06/2009 
Time:  19:18:09 
User:  N/A 
Computer: UK1SRD1602 
Description: 
A process serving application pool 'ASP.NET 2.0' exceeded time limits during 
shut down. The process id was '2788'. 

このイベントはIdle timout(アプリケーションプールのプロパティで指定された分の数の後に表示されます:アプリケーションプールはまた、あなたのシステムイベントログに次のイベントが表示されるはずリサイクル

)と既存のワーカープロセスが保留中の要求を完了するのにかかる時間と最後のASP.NETアプリケーションドメインが破棄されます(既存のASP.NETセッションは古いワーカープロセスによって処理されます)。

関連する問題