代码之家  ›  专栏  ›  技术社区  ›  softveda

NServiceBus是否适用于一般和特定的客户端通知

  •  1
  • softveda  · 技术社区  · 15 年前

    我正在研究基于WCF的发布-订阅框架的各种选项。假设我有一个wcfweb服务将作为发布者和1000个注册为订户的客户端。对于某些已发布的消息,所有客户端都会感兴趣,但同时我希望能够用特定消息通知单个客户端。收到通知后,客户机将调用web服务上的其他web服务方法。

    NServiceBus适合这种情况吗? 如果我使用MSMQ进行传输,是否意味着安装客户端的每台PC都需要创建一个队列?

    1 回复  |  直到 15 年前
        1
  •  4
  •   Udi Dahan    15 年前

    其中一些挑战包括,当给定的订阅客户端关闭时,您希望发布服务器如何工作—您希望在订户恢复时该消息可用吗?如果是这样,那么它们之间就需要某种持久的消息传递—比如MSMQ。

    您关于通知单个客户机的问题,是因为该客户机发送的请求吗?如果是这样,那么标准的NServiceBus调用巴士。回复我会帮你的。使用WCF时,如果响应是异步的,则需要使用回调协定。

    NServiceBus可以完成您描述的所有操作,并且能够自动安装MSMQ和创建队列,从而大大简化客户端部署。

    您还可以使用NServiceBus通过WCF公开消息,因此如果需要,您还可以支持非NServiceBus客户端。它还有自己的http网关和XSD模式,允许非Windows平台上的客户机即使不使用WCF也可以进行互操作。

    希望这能回答你的问题。

    推荐文章