实例映射 - nServiceBus

Instance Mapping - nServiceBus

我们可以使用“实例映射”将消息路由到托管在多个物理服务器上的同一个实例。如果其中一台物理机由于任何原因宕机,会有什么影响? nServiceBus 框架会开始将消息路由到剩余活动的“物理”机器吗?

此致

您说的是使用存储转发的 MSMQ。它首先存储在服务器本地,然后再转发到实际机器。

有两种横向扩展选项

你选择了发件人方分发,我从你的问题中假设,使用 endpoint instance mapping. In that same document, there's a section about the limitations 其中提到:

Sender-side distribution does not use message processing confirmations (the distributor approach). Therefore the sender has no feedback on the availability of workers and, by default, sends the messages in a round-robin behavior. Should one of the nodes stop processing, the messages will pile up in its input queue. As such, nodes running in sender-side distribution mode require more careful monitoring compared to distributor workers.

因此消息不断发送到出现故障的机器。如果完全无法访问,消息将保留在发件人计算机上的 Outgoing queue 中。否则它们将存储在处理机器上的传入队列中。