2

マルチキャストルーターと静的受信者リストルーターの違いはよくわかりません。なぜ私は一方を他方の上に使用するのですか?

Mule-2.xユーザーガイドによると

受信者リスト

受信者リストルーターを使用して、同じイベントを同じエンドポイント上の複数のエンドポイントに送信したり、イベントの次の宛先がイベントのプロパティまたはペイロードから決定されるルーティングスリップ動作を実装したりできます。Muleは、特殊な実装のためのスレッドセーフなベースを提供する抽象的な受信者リスト実装org.mule.routing.outbound.AbstractRecipientListを提供します。Muleは、現在のイベントからエンドポイントの構成済みリストを取得する、またはエンドポイントで静的に宣言される静的受信者リストも提供します。

 <outbound>
     <static-recipient-list-router>
        <payload-type-filter expectedType="javax.jms.Message"/>
        <recipients>
                <spring:value="jms://orders.queue"/>
                <spring:value="jms://tracking.queue"/>
        </recipients>
     </static-recipient-list-router> </outbound>

マルチキャストルーター

マルチキャストルーターを使用して、複数のエンドポイントを介して同じイベントを送信できます。このルーターを使用するときは、イベントソースタイプを処理するようにエンドポイントに正しいトランスフォーマーを構成するように注意する必要があります。

 <outbound>
     <multicasting-router>
        <jms:endpoint queue="test.queue"
 transformer-refs="StringToJmsMessage"/>
        <http:endpoint host="10.192.111.11"
 transformer-refs="StringToHttpClientRequest"/>
        <tcp:endpoint host="10.192.111.12"
 transformer-refs="StringToByteArray"/>
        <payload-type-filter expectedType="java.lang.String"/>
     </multicasting-router> </outbound>

ルーティングされるメッセージがエンドポイントが理解できる形式に変換されるように注意する必要があることに注意してください。

4

2 に答える 2

3

馬の口からまっすぐに(Mule in Action、David Dossot著、John D'Emic、p。98..100)

static-recipient-listルーターを使用すると、同じメッセージを複数のエンドポイントに同時に送信できます。通常、各エンドポイントが同じトランスポートを使用している場合は、静的受信者リストを使用します。これは、VMおよびJMSエンドポイントの場合によくあります。

同一のトランスポートを使用してエンドポイントに同じメッセージを送信する場合は、静的受信者リストを使用します

マルチキャストルーターは、一連のアウトバウンドエンドポイントに同じメッセージを同時に送信するという点で静的受信者リストに似ています。違いは、エンドポイントリストにさまざまなタイプのトランスポートが含まれている場合にマルチキャストルーターが使用されることです。

異なるトランスポートを使用してエンドポイントに同じメッセージを送信する場合は、マルチキャストルーターを使用します

于 2010-09-20T22:16:04.430 に答える
0

これが私がこれらを理解する方法です:

static-recipient-listルーターは、リストされている順序で各受信者にペイロードを送信します。これにより、次のエンドポイントに進む前にペイロードを変更することができます。これにより、エラーが発生した場合に処理を停止することもできます。

マルチキャストルーターは、同じペイロードをすべてのエンドポイントに同時に送信します。各エンドポイントのペイロードを変更することはできません。エンドポイントの1つに障害が発生した場合、他のエンドポイントの処理を停止することはできません。

于 2010-09-07T17:27:16.290 に答える