Вот некоторые сообщения в блоге, которые могут помочь:
Q1) Нужно ли устанавливать MSMQ на всех узлах?
A1) Вам необходимо установить MSMQ на каждом сервере, чтобы сообщение также доставлялось.
Q2) Если это так, когда приложение отправителя отправляет сообщение в MSMQ, должно ли оно отправляться на все узлы?
A2) Это один из способов балансировки нагрузки, когда вы отправляете X-сообщения на X-узлы, но читаете только с 1-го узла, отбрасывая другие копии.
Другой метод заключается в отправке на балансировщик сетевой нагрузки, который отправляет одно сообщение одному случайно выбранному узлу, хотя MSMQ очень липкий, поэтому очень трудно / невозможно таким образом сбалансировать загрузку больших объемов.
В3) Если ответ на мой второй вопрос положительный, то когда клиентское приложение получает сообщение, как другие узлы должны быть уведомлены о получении сообщения клиентом и впоследствии удалены из него?
A3) Это обратная сторона предложенного типа балансировки нагрузки. MSMQ не удалит сообщение, если только ваше приложение не удалит его или не истечет таймер TimeToBeReceived. в основном, вам нужно иметь скоординированные клиентские приложения, если вам нужно избежать обработки дублирующихся сообщений.
Приветствия
Джон Брейквелл