2012-03-14 180 views
0

我有一個在IIS7.5上運行的Web服務。 BizTalk將數據發送到WS。 WS打開SharePoint對象模型並將執行一些事務。幾個BizTalk調用WS應用程序在EventViewer中的下面的信息崩潰之後。應用程序池崩潰?

Faulting application name: w3wp.exe, version: 7.5.7601.17514, time stamp: 0x4ce7afa2 
Faulting module name: MSVCR80.dll, version: 8.0.50727.6195, time stamp: 0x4dcdd833 
Exception code: 0x40000015 
Fault offset: 0x0000000000006a68 
Faulting process id: 0x2010 
Faulting application start time: 0x01cd0161a09e2134 
Faulting application path: c:\windows\system32\inetsrv\w3wp.exe 
Faulting module path: C:\Windows\WinSxS\amd64_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.6195_none_88e41e092fab0294\MSVCR80.dll 

系統日誌:

服務應用程序池「Web服務」的處理遭受了致命的通信錯誤的Windows進程激活服務。進程ID是'8208'。數據字段包含錯誤編號。

+0

不是一個確切的重複數據刪除技術,但這種信息可能有助於追查問題:http://stackoverflow.com/questions/5115611/in-windows-does-the-exception-unknown-software-異常0x40000015,發生 – NotMe 2012-03-14 15:13:21

回答

2

上次我崩潰IIS是因爲我意外地建模了一個構造函數,所以它會進入一個無限循環。如果你全部是託管代碼,那麼除非你無限地點擊/填充內存,否則很難讓你崩潰IIS。

我建議你在代碼上運行一個分析器,並從Visual Studio的代碼分析工具中獲得幫助。看看你是否在處理連接,或者你像我一樣有無限循環。它通常是我們,而不是框架或硬件:)

ps:如果您有一次性物品,請確保您使用的是「使用」塊,這是確保您處理物品的最佳方法。 (代碼分析將最終指出它們)

ps2:瞭解錯誤的另一個好方法可能是在文本文件上記錄關鍵事件 - 或者您懷疑的東西。正如你可能知道許多日誌庫可用於dotnet(我會去NLog

1

由於您使用的SharePoint對象模型,我認爲很可能是什麼detay說,但我不知道這會導致應用程序故障。我想你可能會看到內存不足的例外。令人驚訝的是,這不是BizTalk應用程序故障。

如果在分析和檢查代碼後沒有看到任何內容,我會聯繫Microsoft支持部門以解決此問題。診斷應用程序故障可能很困難,支持呼叫會更快地解決問題的底部。

感謝,