Rhino Service Busを使用して、1つのパブリッシャーと複数のサブスクライバーの間にpub-subをセットアップしようとしています。ただし、私が今までに得たと思われるのは、競合するコンシューマーだけです(メッセージは一方のコンシューマーまたは他方のコンシューマーに分散されますが、両方には送信されません)。
現在のパブリッシャー構成は次のようになります(注:新しいOnewayRhinoServiceBusFacilityを使用しているため、送信側でバス要素を定義する必要はありません)
<facility id="rhino.esb.sender" >
<messages>
<add name="My.Messages.Namespace" endpoint="msmq://localhost/my.queue"/>
</messages>
</facility>
現在のサブスクライバー構成は次のようになります。
<facility id="rhino.esb.receiver" >
<bus threadCount="1" numberOfRetries="5" endpoint="msmq://localhost/my.queue" DisableAutoQueueCreation="false" />
<messages>
<add name="My.Messages.Namespace" endpoint="msmq://localhost/my.queue" />
</messages>
</facility>
パブリッシャーとサブスクライバーを起動する2つのシンプルなコマンドラインアプリがあります。サブスクライバービンをコピーして貼り付けるだけで、2つのサブスクライバーを設定できます。私のメッセージハンドラは次のようになります。
public class DummyReceiver : ConsumerOf<MyMessageType>
{
public void Consume(MyMessageType message)
{
// ......
}
}
何か案は?乾杯