3

アプリ プールのリサイクルを行うまで、散発的に WebApi アプリケーションが動作しなくなります。

サイトが次の YSOD エラーでスタックします。

Detailed Error Information
Module: IIS Web Core
Notification: BeginRequest
Handler: Not yet determined
Error Code: 0x8007000d
Config Error: Configuration file is not well-formed XML 
Config File: \\?\{PathToMyVirtualApplicationWebsiteHere}\web.config
Physical Path: {PathToMyVirtualApplicationWebsiteHere}

ここで最も奇妙な問題は、YSOD 構成ソースが空白として報告されることです。

Config Source   
   -1: 
    0: 

XML web.config の形式が正しくない場合、通常、ここに xml の不正な行が表示されます。

根本的な原因と思われるもの - 毎日決まった時間に IIS をリサイクルする必要がありますが、うまくいかないようです:

  • アプリケーションが異常であると報告しました。ワーカー プロセスは、リサイクルを要求します。理由: この特定の要求の失敗の原因を詳述するエラー メッセージは、Web サーバーのアプリケーション イベント ログにあります。このログ エントリを確認して、このエラーが発生した原因を特定してください。データはエラーです。
  • 上記と同じ秒でリサイクルを行う「データはエラーです」イベントのトン以上
  • 1秒後。メッセージ: タイプ 'System.OutOfMemoryException' の例外がスローされました。 System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() での System.Threading.ExecutionContext.Run(ExecutionContext executionContext、ContextCallback コールバック、オブジェクト状態、ブール値 preserveSyncCtx) での RunInternal (ExecutionContext executionContext、ContextCallback コールバック、オブジェクト状態、ブール値 preserveSyncCtx) ) System.Threading.ThreadPoolWorkQueue.Dispatch() で
  • ~ 1 分後、Windows エラー報告が開始されます ... エラーが発生しているアプリケーション名: w3wp.exe
  • その後、イベントログですべてが静かになります

私が確認したこと:

  1. ProcMon は {PathToMyVirtualApplicationWebsiteHere}\web.config へのアクセスを示していません
  2. App Pool Recycle は次回まで問題を修正します (すぐに停止/開始します)。

アップデート:

  1. IIS 7.5 用の Application Initialization 1.0 を Url Rewrite Module と組み合わせて使用​​しています ... これが適切にインストールされていない別のサーバーで、まったく同じエラーが発生します (ただし、メモリ不足の問題はありません)。
4

0 に答える 0