2012-12-06 47 views
1

我的本地計算機上有一個(死信)隊列logging/logdeadletterservice.svc。我有一個相應的服務運行在appdev.me.com/logging/logdeadletterservice.svc從隊列拉消息並重新提交它們。只要工作進程正在運行,此工作就會很好。但是,一旦工作進程關閉(或尚未出現),該服務不再從隊列中獲取消息,除非我手動瀏覽到SVC。當工作進程關閉後隊列中的消息時,服務未激活

根據this post,網絡服務需要權限來查看隊列。我繼續並添加了該權限,但該消息未從隊列中提取。我嘗試重新啓動Net.Msmq偵聽器適配器(實際上,它正在Network Service下運行),但仍然無法執行。

關於我在做什麼錯的任何想法?

編輯:我試過running sc sidtype netmsmqactivator unrestricted並重新啓動服務,但沒有去。在沒有解決問題後,將其切換回受限制(原始)。

EDIT2:還嘗試運行Net.Msmq偵聽器適配器作爲我自己(這是服務正在運行的用戶),但沒有去。

回答

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