我有一个WCF Web服务,它保存在IIS上的应用程序池中。
当我试图调用此Web服务时,我一直在获得“Service Unavaiable”。我尝试做的第一件事是重新启动应用程序池。我做了它,几秒钟后,它崩溃并停止了。
查看事件查看器,我发现了这些消息,目前无法帮助我找到问题所在。
为应用程序池提供服务的进程 'X' 报告失败了。进程ID是 '11616'。数据字段包含 错误号码。
有关详细信息,请参阅“帮助和” 支持中心在 http://go.microsoft.com/fwlink/events.asp
在得到其中几个之后,我得到了这个:
应用程序池 'X' 由于自动禁用 一系列的失败 提供该申请的流程 池。
有关详细信息,请参阅“帮助和” 支持中心在 http://go.microsoft.com/fwlink/events.asp
我已经检查了权限和应用程序池配置,但一切似乎都没问题。
有没有人经历过这个?
提前致谢。
答案 0 :(得分:10)
查看运行应用程序池的标识。如果您将其配置为在域帐户下运行(并且这是在IIS 6.0服务器上),请确保域帐户是本地安全组“IIS_WPG”的成员,因此需要运行IIS_WPG组中的成员身份w3wp.exe工作进程。
答案 1 :(得分:1)
看起来有多个可能的根本原因,但在我查看应用程序事件日志的情况下,我看到同时发生的看似无关的事件:
Faulting application name: svchost.exe_wuauserv, version: 6.3.9600.17415, time stamp: 0x54504177
Faulting module name: wuaueng.dll, version: 7.9.9600.17915, time stamp: 0x558b6c14
Exception code: 0xc0000005
Fault offset: 0x00000000002b694f
Faulting process id: 0x297c
Faulting application start time: 0x01d0b52047cfa008
Faulting application path: C:\windows\system32\svchost.exe
Faulting module path: c:\windows\system32\wuaueng.dll
Report Id: 87e1370b-2113-11e5-827d-a0d3c1241fdb
Faulting package full name:
Faulting package-relative application ID:
这对我有什么帮助。 (这是完全黑魔法,我不明白为什么它起作用。) 取自here:
开始/所有程序/右键单击命令提示符/运行方式 管理员在命令提示符下键入以下命令:
sc config winmgmt type= own sc config wuaserv type= own
这将在他们自己的svchost.exe中同步WMI和Windows Update, 这样,如果它再次崩溃,它们将不会影响其他正在运行的服务。 经过进一步调查,WMI也可能成为受害者,因为 问题是OLE可能代码未初始化两次。
线程上的另一个人报告说只有第一个命令对他起作用,尽管问题消失了:
我按照您的说明进行了以下结果。
Sc config winmgmt type= own SUCCESS Sc config wuaserv type= own [SC] OpenService FAILED 1060: The specified service does not exist as an installed service.
虽然其中一个命令失败了,但我不再获得主机了 错误消息
答案 2 :(得分:0)
你可以试试几件事。
尝试在IIS中创建单独的应用程序池,并在WCF服务中使用该应用程序池。 这样,app-pool完全专用于WCF,不会抛出任何错误。
您是否正在使用其中一个内置的“网络服务”或“本地服务”或“本地系统”作为应用池标识?如果是,请尝试设置服务帐户并在app-pool标识中使用该帐户。
希望这有帮助!