為應用程序池“Classic .NET AppPool”提供服務的程序與 Windows 程序啟動服務發生了致命的通信錯誤
我在 Windows Server 2008 上的 IIS 7 上執行 ASP.NET 3.5 Web 應用程序。
今天下午早些時候我收到以下錯誤:
HTTP Error 503. The service is unavailable.我查看了事件日誌並發現:
A process serving application pool 'Classic .NET AppPool' suffered a fatal communication error with the Windows Process Activation Service. The process id was '3328'. The data field contains the error number.以下是該活動的全部詳情:
Log Name: System Source: Microsoft-Windows-WAS Date: 18/09/2009 14:58:31 Event ID: 5011 Task Category: None Level: Warning Keywords: Classic User: N/A Computer: computername Description: A process serving application pool 'Classic .NET AppPool' suffered a fatal communication error with the Windows Process Activation Service. The process id was '3328'. The data field contains the error number. Event Xml: <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event"> <System> <Provider Name="Microsoft-Windows-WAS" Guid="{5 .. 0}" EventSourceName="WAS" /> <EventID Qualifiers="32768">5011</EventID> <Version>0</Version> <Level>3</Level> <Task>0</Task> <Opcode>0</Opcode> <Keywords>0x80000000000000</Keywords> <TimeCreated SystemTime="2009-09-18T13:58:31.000Z" /> <EventRecordID>23552</EventRecordID> <Correlation /> <Execution ProcessID="0" ThreadID="0" /> <Channel>System</Channel> <Computer>computername</Computer> <Security /> </System> <EventData> <Data Name="AppPoolID">Classic .NET AppPool</Data> <Data Name="ProcessID">3328</Data> <Binary>6D000780</Binary> </EventData> </Event>這導致:
Application pool 'Classic .NET AppPool' is being automatically disabled due to a series of failures in the process(es) serving that application pool.以下是該活動的全部詳情:
Log Name: System Source: Microsoft-Windows-WAS Date: 18/09/2009 15:03:05 Event ID: 5002 Task Category: None Level: Error Keywords: Classic User: N/A Computer: computername Description: Application pool 'Classic .NET AppPool' is being automatically disabled due to a series of failures in the process(es) serving that application pool. Event Xml: <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event"> <System> <Provider Name="Microsoft-Windows-WAS" Guid="{5 .. 0}" EventSourceName="WAS" /> <EventID Qualifiers="49152">5002</EventID> <Version>0</Version> <Level>2</Level> <Task>0</Task> <Opcode>0</Opcode> <Keywords>0x80000000000000</Keywords> <TimeCreated SystemTime="2009-09-18T14:03:05.000Z" /> <EventRecordID>23557</EventRecordID> <Correlation /> <Execution ProcessID="0" ThreadID="0" /> <Channel>System</Channel> <Computer>computername</Computer> <Security /> </System> <EventData> <Data Name="AppPoolID">Classic .NET AppPool</Data> <Binary> </Binary> </EventData> </Event>結論:HTTP 錯誤 503。服務不可用。
有人可以幫我確定這是如何發生的,以及我需要做些什麼來防止它在未來發生。
這是一個非常討厭的。我建議獲取IIS 調試診斷工具。您可以通過關閉應用程序池屬性中的“快速故障保護”來緩解症狀,但這只會掩蓋問題。發生的事情是您的應用程序經常/重複地遇到異常,以至於服務會自行關閉。您需要執行診斷工具來擷取進出的所有內容,以查找正在發生的異常。
這可能是一項非常費力的任務,因為該工具將收集千兆字節的垃圾進行篩選。如果幸運的話,關閉“快速故障保護”可能會允許異常進入瀏覽器,但我的猜測是伺服器最終會掛起。