【问题标题】:NServiceBus Pub/Subscribe using SQLServer transport - can the subscriber scale out?NServiceBus Pub/Subscribe 使用 SQLServer 传输 - 订阅者可以横向扩展吗?
【发布时间】:2014-05-06 09:11:21
【问题描述】:

我相信使用最新版本的 NServiceBus 4.4。

我们正在寻求实现 NServiceBus,本节使用 SQLServer 作为传输。我们想要发布/订阅,这很好,但是如何扩展订阅者呢?

我做了一个 PoC,我多次运行 SQLServer 传输的接收端点,当有消息进来时,正在运行的接收者的第一个实例得到消息并处理它,导致另一个进程不处理它,这是正确的。

在使用 SQLServer 的发布/订阅体系结构中,这种运行多个订阅者实例的相同方法是否有效,并且由于我们使用的是公共队列 (SQLServer),它只会自行排序,不会多次处理消息?

【问题讨论】:

    标签: nservicebus


    【解决方案1】:

    使用 SQL Server 持久性时,您的事件和消息的订阅者保存在 NServiceBus 数据库中的订阅表中,因此您可以通过查看其中的内容来检查哪些端点正在订阅哪些消息或事件。

    值得注意的是,您只能使用实现 IEvent 接口的 NServiceBus 发布“消息”类(除非您使用 unobtrusive mode)。

    当您使用 bus.Publish 发布消息或事件时,该类型的所有订阅者都会订阅它,只要各个端点名称不同。

    来自特定软件的更多信息是here

    还有here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-13
      相关资源
      最近更新 更多