我用IIS寄宿WCF的服务,有用到MSMQ,本地测试的话,消息队列很及时的处理,但是每次处理会报一个IIS的VS调试错误,不知道什么原因,但是服务一起正常。
部署到服务器上去了之后,头两天,MSMQ进队列之后间隔时间长点还能处理,这两天队列里的消息都超时进死信队列了,手动访问svc服务的话会触发处理队列里的信息,但是我也不能天天刷新svc页面啊
我想问一下,MSMQ服务端不是自动处理么,这个处理是何时?有时看到队列里有很多消息了,但是好像过蛮久才会处理,我这种情况是什么原因,都超时进死信了。
难道要手动定时接收队列里的消息?
需要订阅一下服务或定时才行,参考
http://stackoverflow.com/questions/3317568/subscribe-to-msmq
http://www.codeproject.com/Articles/32221/Sample-Starter-Project-Using-WCF-and-MSMQ
意思是我写个轮询的服务取队列里的消息?这个没问题,只是我想知道寄宿服务不是自动处理队列的消息么?比如本地调试的时候,也没有主动写额外处理的代码啊
你这个问题解决没有呢。。。。我也遇到了这样的问题。。。请问有什么解决办法没呢,网上也找不到相关的办法
IIS 会自动回收应用程序池,监听 MSMQ 的操作就会被取消。因此,好的方式是使用 Windows 服务宿主 WCF 服务,它会一直监听 MSMQ。