NServiceBus:使用NServiceBus分销商的优点和缺点

skb*_*skb 5 nservicebus nservicebus-distributor

我正在考虑使用网络负载均衡器在我的用户实例之间加载平衡消息,而不是使用NServiceBus分发服务器(这基本上只是我能说的软件负载均衡器).每个订户实例将具有要传递到的消息的相同名称的队列,并且将存在在订户之间循环的虚拟IP.发布者只会知道虚拟IP和队列名称.

以下是我理解为这样做的利弊:

  1. PROS
    • 无需安装NServiceBus分销商
    • 当我们进行横向扩展时,需要管理/更新的东西少一些(我们已经使用F5对这些机器进行负载平衡,而我们的数据中心购买时就知道它就像他们的手背一样)
    • 少一点失败(是的,NLB可能会失败,但让我们面对它,F5将比在Windows上运行的NServiceBus分销商稳定得多)
    • 无需拥有群集服务器即可拥有我们的群集MSMQ.2台服务器比仅向F5添加另一台VIP贵得多.
  2. 缺点
    • NServiceBus分发服务器允许您更轻松地查看消息积压,因为您可以监视的分发服务器上有一个队列.这使您很容易知道何时应添加更多工作节点.
    • NServiceBus分销商在控制工作线程数等方面比较聪明.为什么比NLB更能控制?(不确定这一个)

我准确地捕捉到了这个吗?我知道建议使用NServiceBus分销商,在我反对该建议之前,我想了解更多原因.

Udi*_*han 4

您已经了解了一些要点,但主要区别之一是,由于分配器会自行加载,如果一台机器出现故障,其余的负载将在剩余的机器之间分配降低 SLA 对消息的影响。