【问题标题】:Worker node handles message from two distributor工作节点处理来自两个分发器的消息
【发布时间】:2012-10-16 15:02:26
【问题描述】:

我在 nServicebus 组中也有同样的问题。我没有得到支持此功能的确切答案。我喜欢在此处发布以了解 SO 社区的想法。

http://tech.groups.yahoo.com/group/nservicebus/message/16487

我已经有处理来自 经销商。现在我想扩展这个工作节点来处理来自 另一个具有不同队列名称的分发器。当我看着单播总线 配置,我发现只有一个distributor Control和data地址可以 放。有没有办法在 NServiceBus 配置中设置多个分配器? 如果您还解释了使用处理多个分销商的利弊 这会有所帮助。

【问题讨论】:

    标签: nservicebus nservicebus-distributor


    【解决方案1】:

    听起来您可能正在使用 NServiceBus 2.x,因为在 NServiceBus 3.0 中,Distributor 故事发生了很大变化。

    在 NServiceBus 2.x 下,您通常会设置多个端点,所有端点都与同一个分发者通信。这些端点成为工作节点,分发者根据每个工作节点报告的空闲线程来分配它们之间的工作。

    因此,如果您将进入队列 X 的消息负载由 X.Worker@Server1 和 X.Worker@Server2 处理,那么对我来说,您为什么想要 X.Worker 实例之一是没有意义的处理进入队列 Y 的消息?

    相反,您应该(通常)为每个逻辑服务设置一个分发服务器。这类似于用于 HTTP 流量的网络负载均衡器。然后它后面的端点充当工作节点。您可以为另一个逻辑服务设置第二个分发器,它有自己的工作节点。

    现在,说了这么多,在 NServiceBus 3.x 中,分发器与端点集成在一起。因此,您从一个配置为主节点的端点开始。基本上,它充当分销商和工人。然后要向外扩展,您只需以 Worker 角色站起来更多节点,指向主节点以获取它们的工作。

    在这种情况下,(通常)没有独立的分销商。这就是我猜你指的是 V2 的原因。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多