【发布时间】:2013-06-28 17:49:00
【问题描述】:
我有一个客户端服务器设置,我通过 http 将消息发送到服务器(我使用作为 Windows 服务托管的 WCF 服务。)在我当前的设置中,当我看到一些消息在连接断开时丢失客户端和服务器,为了可靠性,我决定使用 MSMQ。所以客户端将消息发送到队列,服务器不断轮询队列,我需要在开发之前做出一些设计决策。 哪个是最好的选择 windows 服务或 wcf 服务(托管为 windows 服务)?
如果我必须开发这样一个服务,它所要做的就是不断地从队列中读取消息并进行一些处理,那么除了 Windows 服务之外,WCF 是否还有其他优势。我将使用一个私有队列,它是跨事务的.
【问题讨论】:
-
查看 NService 总线。它完全符合您的目标。也很容易设置。 nservicebus.com
-
@JohnHartsock 谢谢你,但我想自己写点东西。
-
为什么不直接使用现有的 WCF 服务并使用 WS-ReliableMessaging 呢?如果您在 MSMQ 上死心塌地,那么您可以将 NetMSMQBinding 用于您的传输层,但也支持其他基于 HTTP 的传输绑定。
标签: c# wcf windows-services msmq