Flex Gateway新着情報
Governance新着情報
Monitoring API Manager以下の例は、異なるアプリケーション間でメッセージを送信する 2 つの方法を示しています。
リスナーを使用して最初のアプリケーションからメッセージを受信し、Publish 操作を使用して受信したメッセージを 2 番目のアプリケーションに提供します。
2 番目のアプリケーションで Publish 操作を使用してメッセージキューにメッセージをプッシュし、Consume 操作を使用してメッセージをコンシュームします。
どちらの場合でも、2 つのアプリケーションが同じドメインに存在している必要があります。
次のように、ドメインに VM 設定を作成します。
<mule-domain xmlns="http://www.mulesoft.org/schema/mule/domain"
xmlns:vm="http://www.mulesoft.org/schema/mule/vm"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/vm
http://www.mulesoft.org/schema/mule/vm/current/mule-vm.xsd
http://www.mulesoft.org/schema/mule/domain
http://www.mulesoft.org/schema/mule/domain/current/mule-domain.xsd">
<vm:config name="sharedVMConfig">
<vm:queue queueName="sharedQueue" queueType="PERSISTENT" />
</vm:config>
</mule-domain>
xml
同じドメインのアプリケーションにリスナーを配置します。
<flow name="crossAppListener">
<vm:listener queueName="sharedQueue" config-ref="sharedVMConfig" />
<logger />
</flow>
xml
同じドメインの 2 番目のアプリケーションからメッセージをパブリッシュします。
<flow name="crossAppRequester">
<vm:publish queueName="sharedQueue" config-ref="sharedVMConfig" />
</flow>
xml
この例では、Listener および Publish 操作で同じキュー (sharedQueue
) と同じ設定 (sharedVMConfig
) を参照しています。
<vm:listener>
メッセージソースを使用する代わりに、<vm:consume>
操作を使用して VM キューにあるメッセージをコンシュームできます。この操作では、メッセージをオンデマンドでコンシュームし、次のことが可能です。
特定の条件に応じて異なるキューから動的にコンシュームする。
アプリケーションがメッセージをコンシュームするリズムをより厳しく制御する。
キューのパブリッシュされたメッセージをコンシュームする手順は、次のとおりです。
次のように、ドメインに VM 設定を作成します。
<mule-domain xmlns="http://www.mulesoft.org/schema/mule/domain"
xmlns:vm="http://www.mulesoft.org/schema/mule/vm"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/vm
http://www.mulesoft.org/schema/mule/vm/current/mule-vm.xsd
http://www.mulesoft.org/schema/mule/domain
http://www.mulesoft.org/schema/mule/domain/current/mule-domain.xsd">
<vm:config name="sharedVMConfig">
<vm:queue queueName="sharedQueue" queueType="PERSISTENT" />
</vm:config>
</mule-domain>
xml
同じドメインの 2 番目のアプリケーションからメッセージをパブリッシュします。
<flow name="crossAppRequester">
<vm:publish queueName="sharedQueue" config-ref="sharedVMConfig" />
</flow>
xml
メッセージがパブリッシュされたら、キューからメッセージを取得します。
<flow name="queueConsume">
<vm:consume queueName="sharedQueue" config-ref="sharedVMConfig" />
<logger />
</flow>
xml
この例では、Publish および Consume 操作で同じキュー (sharedQueue
) と同じ設定 (sharedVMConfig
) を参照しています。