对 IIS7 上的事件 ID 5146“应用程序池已被禁用”进行故障排除

对 IIS7 上的事件 ID 5146“应用程序池已被禁用”进行故障排除

我有一个在 Windows Server 2008 Web Edition 上运行的网站,在过去几天里突然开始冻结并向用户显示“503 服务不可用”消息。

事件日志中出现了一堆错误,但最有趣的是:

    **Log Name:      System
    Source:        Microsoft-Windows-WAS
    Date:          22/08/2011 12:11:16
    Event ID:      5146
    Task Category: None
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:      myserver.mydomain.com
    Description:
    Application pool www.mysite.com has been disabled. The request from protocol http to create the application pool failed. Restart the application pool so that Windows Process Activation Service (WAS) can determine the correct state of the protocol. 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="{524B5D04-133C-4A62-8362-64E8EDB9CE40}" EventSourceName="WAS" />
        <EventID Qualifiers="49152">5146</EventID>
        <Version>0</Version>
        <Level>2</Level>
        <Task>0</Task>
        <Opcode>0</Opcode>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2011-08-22T11:11:16.000Z" />
        <EventRecordID>37</EventRecordID>
        <Correlation />
        <Execution ProcessID="0" ThreadID="0" />
        <Channel>System</Channel>
        <Computer>myserver.mydomain.com</Computer>
        <Security />
      </System>
      <EventData>
        <Data Name="AppPoolID">www.mysite.com</Data>
        <Data Name="ProtocolID">http</Data>
        <Binary>B7000780</Binary>
      </EventData>
    </Event>

重新启动服务器可以暂时解决问题(大约 24 小时),之后我们又开始看到 503 错误消息。IIS 事件日志中没有什么可继续的内容;重新启动应用程序池无法解决问题,iisreset 也无法解决问题。

编辑:该网站现在立即出现故障,我们仍然不知道是什么原因造成的。

有任何想法吗?

谢谢

-D-

答案1

如果重新启动可以解决问题,则请将问题排除为可能的内存泄漏。

答案2

感谢 Microsoft 的支持,我们已将其追溯到与 Windows 文件共享相关的某种资源泄漏。有问题的 Web 服务器有一个映射到媒体服务器上的 UNC 文件共享的虚拟目录,并且 - 由于我们还不完全了解的原因 - 在此 UNC 共享上打开的文件句柄没有被干净地关闭。

MS 支持人员分析了崩溃的 IIS 进程的内存转储,发现其中充斥着对 \contentserver\webmedia\ 上的 UNC 文件路径的引用,并建议我们重新启动媒体服务器……我们昨天早上这样做了,到目前为止,一切运行正常。我们正在调查位于 Web 服务器和内容服务器之间的防火墙设备的潜在问题,但如果您遇到类似情况并且您的网站有映射到 UNC 共享的虚拟目录,请尝试重新启动 UNC 共享另一端的服务器。

相关内容