早上好,大家。
我对WCF有点新,我们已经创建了一个新的WCF服务。此服务使用net.msmq绑定来传输和接收来自另一个WCF服务的消息。一切都很好。但是,当我们将服务部署到我们的服务器时,这个新的WCF服务“睡着了”。我会解释一下。
我完全理解WCF服务不像Windows服务那样运行。我的意思是,一旦我们ping服务,它将运行好几分钟。它监视它应该的MSMQ队列,并按照它应该的方式处理消息。发送和接收工作就好了。如果传入数据中存在间歇,则该服务似乎停止侦听。它将保持这种状态,直到我们通过转到我们必须放置的HTTP服务公开的URL来ping服务。
我们没有将它构建为RESTful服务,所以我不希望这是问题所在。有人有什么想法吗?
谢谢,
Jim Evans,MCAD答案 0 :(得分:1)
如果服务在IIS下运行,如果没有对它的http请求,它将受到回收超时的限制。目前尚不清楚如何完成对其他服务的监控,但如果没有外部请求,IIS会将服务置于休眠状态,因此可能会更改受监控的服务,以便向监控服务发送通知。
如果您有自主WCF服务,请丢弃第一段,自主WCF服务不受IIS影响,除非您将其关闭,否则不应进入休眠状态。