在工作进程关闭后,队列中的消息未激活服务

时间:2012-12-06 17:09:02

标签: wcf msmq

我的本​​地计算机上有一个名为logging/logdeadletterservice.svc的(死信)队列。我有一个在appdev.me.com/logging/logdeadletterservice.svc运行的相应服务从队列中提取消息并重新提交。只要工作进程正在运行,这就很有用。但是,一旦关闭了工作进程(或者它尚未启动),除非我手动浏览到SVC,否则该服务不再从队列中获取消息。

根据this post,NETWORK SERVICE需要权限来查看队列。我继续并添加了该权限,但消息未从队列中提取。我尝试重新启动Net.Msmq侦听器适配器(实际上是在网络服务下运行),但仍然没有。

关于我做错的任何想法?

编辑:我已经尝试了running sc sidtype netmsmqactivator unrestricted并重启了服务,但没有去。在没有解决问题之后将其切换回限制(原始)。

EDIT2 :还尝试以自己的身份运行Net.Msmq侦听器适配器(运行该服务的用户),但没有去。

1 个答案:

答案 0 :(得分:0)

使用AppFabric结束并对appcmd.exe运行以下命令以使池始终可用并始终预热:

%windir%\system32\inetsrv\appcmd.exe set apppool "My Site" /startMode:AlwaysRunning
%windir%\system32\inetsrv\appcmd.exe set app /app.name:"My Site/My App" /serviceAutoStartEnabled:True /serviceAutoStartMode:All /serviceAutoStartProvider:Service