我正在考虑使用网络负载均衡器在我的用户实例之间加载平衡消息,而不是使用NServiceBus分发服务器(这基本上只是我能说的软件负载均衡器).每个订户实例将具有要传递到的消息的相同名称的队列,并且将存在在订户之间循环的虚拟IP.发布者只会知道虚拟IP和队列名称.
以下是我理解为这样做的利弊:
PROS
无需安装NServiceBus分销商
当我们进行横向扩展时,需要管理/更新的东西少一些(我们已经使用F5对这些机器进行负载平衡,而我们的数据中心购买时就知道它就像他们的手背一样)
少一点失败(是的,NLB可能会失败,但让我们面对它,F5将比在Windows上运行的NServiceBus分销商稳定得多)
无需拥有群集服务器即可拥有我们的群集MSMQ.2台服务器比仅向F5添加另一台VIP贵得多.
缺点
NServiceBus分发服务器允许您更轻松地查看消息积压,因为您可以监视的分发服务器上有一个队列.这使您很容易知道何时应添加更多工作节点.
NServiceBus分销商在控制工作线程数等方面比较聪明.为什么比NLB更能控制?(不确定这一个)
我准确地捕捉到了这个吗?我知道建议使用NServiceBus分销商,在我反对该建议之前,我想了解更多原因.