IIS 7 を搭載した Windows Server 2008 で ASP.net MVC アプリケーションを実行しています。すべて正常に動作しますが、毎晩アプリケーション プールが停止してエラーが発生するためhttp 503
、毎朝プールを再起動する必要があります。
サーバーは他の誰かによって保守されており、夜間に他の作業が実行されていることがわかっています。これが原因だと思います。さらに、夜間にデータベースへの接続タイムアウトが発生していることもわかっています (SQL Server は同じマシンで実行されています)。
私が知りたいこと:
- なぜこのようなことが起こるのでしょうか。これは、サーバーの速度が遅くなりすぎたり、エラーが多すぎる場合にアプリケーション プールを停止する IIS の機能なのでしょうか。
- これを停止するための構成はありますか、またはアプリケーション プールを自動的に再起動させる方法はありますか?
何かヒントがあればいただければ幸いです。
答え1
はい、IIS 7 にはエラー間隔が組み込まれています。ここでは IIS のオランダ語版しか持っていません。そのため、完全に正しく翻訳されていない可能性があります。
Application Groups
-> [指定したアプリケーションを右クリック] ->に移動しますAdvanced Settings
。
カテゴリに移動しますFast security against errors
。
ここでは、デフォルトで有効になっており、エラー間隔は 5 分、エラー数は 5 であることがわかります。このオプションは無効にしたり、調整したりできます。また、毎朝アプリケーションを起動するバッチ ジョブを作成することもできます。このオプションは、エラー セキュリティが無効になっていると、DoS 攻撃でサイトとデータベースを停止することがはるかに困難になるため、データベースにとってより安全です。
次のようなコマンドラインを使用してアプリケーションを起動できます。
%windir%\system32\inetsrv\appcmd start apppool /apppool.name:[アプリケーション名]