4

サーバーは Windows Server 2003 を実行しています。IIS のサイトの .Net バージョンを 4.0 を使用するように更新しました。変更が行われてからランダムに週に 1 ~ 2 回、ラピッド フェイルがトリガーされ、サイトは 503 エラーで停止されます。

アプリケーション ログには、ラピッド フェイル トリガーを開始する一連のエラーが表示されます。それぞれ 2 つのエラーのセットがあり、10 のラピッド フェイル トリガーまでです。エラーは次のとおりです。

1:27:21 AM
.NET ランタイム 4.0 エラー
EventType clr20r3、P1 w3wp.exe、P2 6.0.3790.3959、P3 45d6968e、P4 app_code.xqrjkjyl、P5 0.0.0.0、P6 51345a6b、P7 252、P8 0、P9 system.stackoverflowexception 、P10 NIL。

1:27:11 AM
.NET ランタイム
アプリケーション: w3wp.exe
フレームワーク バージョン: v4.0.30319
説明: スタック オーバーフローのため、プロセスが終了しました。

4.0 エラーは、名前のない .Net エラーの 10 秒後に発生することに注意してください。unspecified .net version エラーは、移動元の古い 2.0 フレームワークのものだと思います。

IIS6 では、ハンドラーは 4.0 を使用するように設定されています。メイン サイトにもいくつかのアプリケーション プールがあります。それらすべての web.config ファイルは、使用するフレームワークとして 4.0 を指定します。

<compilation debug="false" targetFramework="4.0">
<assemblies>
<add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<!--<add assembly="System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>-->
</assemblies>
4

1 に答える 1

1

iisstate ( http://www.iisfaq.com/?View=P197 ) または iis debug diag ( http://blogs.msdn.com/ b/tess/archive/2008/05/21/debugdiag-1-1-or-windbg-which-one-should-i-use-and-how-do-i-gather-memory-dumps.aspx )。

ダンプを使用すると、それを分析 (Windbg) し、この例外がスローされているポイントに入ることができます。

このIIS ワーカー プロセス クラッシュ ダンプの取得も参照してください。

乾杯

于 2013-04-08T20:19:36.780 に答える