環境 Windows Server 2012 R2 で IIS 8 を実行しており、独自のアプリケーション プールを使用して多数の .net Web アプリを実行しています。
問題 時折、理由はまだ特定されていませんが、.Net MVC アプリの 1 つに対する特定の要求がアプリ プールで取得され、それがスタック/ループしており、大量の経過時間が発生しているように見えます。これを監視するには、IIS 管理コンソールの「ワーカー プロセス」機能を使用し、高い CPU とメモリを使用している特定のアプリケーション プールをダブルクリックします。
これまでの調査結果 これまで のところ、この問題が発生した場合、私が解決できた唯一の方法は、アプリケーション プールを手動でリサイクルし、夜間にスケジュールされたアプリケーション プールのリサイクルを待つか、IIS をリセットすることです。残念ながら、これには意図しない副作用があります。つまり、すべての人が Web サイトから追い出されます。解決策を大規模に検索しても成果は得られず、iis.net への投稿は、それができないことを示唆しています。
根本的な原因を突き止めて最初に発生するのを防ぐことができるまで、これを行うためのより良い方法を見つけた人はいますか?
さらに、IIS、スクリプト、コード、またはサードパーティのユーティリティを介してこれを行うことにオープンです。