Anypoint MQ コネクタ

Select

Anypoint MQ コネクタは、Anypoint MQ クラウドサービスを使用して Mule アプリケーションにパブリッシュ - サブスクライブメッセージングを提供します。

Anypoint MQ は、エンタープライズメッセージングパターン、マイクロサービスと IoT などの非同期通信といった広範なメッセージングのユースケースをサポートします。また、Anypoint MQ には、node.js、Java、Go、devops bash スクリプトなどのあらゆるフレームワークを使用してメッセージのパブリッシュやコンシュームを行う REST API もあります。

詳細は、Anypoint MQ ドキュメントセットおよび「関連情報」に記載されたリソースを参照してください。

前提条件

このコネクタを使用するには、Anypoint Studio、Anypoint コネクタ、Mule フローに精通している必要があります。Anypoint MQ コネクタは無料ですが、Anypoint Platform でサービスに接続するにはライセンスが必要です。無料のトライアルソフトウェアをご利用いただけます。

互換性

ソフトウェア バージョン

Mule Runtime

4.0.0 以降

Anypoint Studio

v7 以降

このドキュメントは Mule 4 にのみ適用されます。Mule 3 と互換性のあるコネクタについては、Anypoint MQ Connectorを参照してください。

このコネクタをインストールする

Anypoint Exchange からインストールする手順は、次のとおりです。

  1. Anypoint Studio で、Studio タスクバーの Exchange アイコンをクリックします。

  2. Anypoint Exchange で [Login (ログイン)] をクリックし、Anypoint Platform ユーザ名とパスワードを指定します。

  3. コネクタを検索して [Install (インストール)] をクリックします。

  4. 画面の指示に従ってコネクタをインストールします。

XML で記述されたアプリケーションまたはスタンドアロンアプリケーションでインストールする手順は、次のとおりです。

  1. Anypoint Studio で Mule プロジェクトを開きます。

  2. コネクタを連動関係として pom.xml ファイルに追加します。

    <dependency>
      <groupId>com.mulesoft.connectors</groupId>
      <artifactId>anypoint-mq-connector</artifactId>
      <version>${mq.latest.version}</version>
      <classifier>mule-plugin</classifier>
    </dependency>

最新の POM、Gradle、または SBT 連動関係については、Exchange の​https://www.anypoint.mulesoft.com/exchange/com.mulesoft.connectors/anypoint-mq-connector/[「Anypoint MQ Connector」]アセットを参照してください。[Dependency Snippets (連動関係スニペット)] をクリックすると、完全なリストが表示されます。

Studio Visual Editor で設定する

  1. Studio で、[File (ファイル)] > [New (新規)] > [Mule Project (Mule プロジェクト)] をクリックします。

  2. 「mq」を検索し、[Anypoint MQ] コネクタをキャンバスにドラッグします。このコネクタが見つからない場合は、 このコネクタをインストールするに戻り、コネクタがインストールされていることを確認してください。

  3. [Connector Configuration (コネクタ設定)] の右にある緑のプラス記号をクリックします。

  4. MQ キューとメッセージ交換を配置するリージョンの URL を指定します。

    可能な値:

    • 北米:

      • 米国東部 (北バージニア): https://mq-us-east-1.anypoint.mulesoft.com/api/v1

      • 米国西部 (オレゴン): https://mq-us-west-2.anypoint.mulesoft.com/api/v1

      • カナダ中央部: https://mq-ca-central-1.anypoint.mulesoft.com/api/v1

    • ヨーロッパ:

      • EU (アイルランド): https://mq-eu-west-1.anypoint.mulesoft.com/api/v1

      • EU (ロンドン): https://mq-eu-west-2.anypoint.mulesoft.com/api/v1

    • APAC:

      • アジア太平洋 (シンガポール): https://mq-ap-southeast-1.anypoint.mulesoft.com/api/v1

      • アジア太平洋 (シドニー): https://mq-ap-southeast-2.anypoint.mulesoft.com/api/v1

        FIFO キューは、米国東部、米国西部、EU アイルランドに配置できます。

  5. Anypoint Platform で、[MQ] > [Client Apps (クライアントアプリケーション)] をクリックします。必要に応じて、クライアントアプリケーションを作成します。

  6. Anypoint Platform の [MQ] > [Client App (クライアントアプリケーション)] > [Client App ID (クライアントアプリケーション ID)] の値を Studio の [Client ID (クライアント ID)] 項目にコピーします。

  7. [Client App (クライアントアプリケーション)] > [Client Secret (クライアントシークレット)] の値を Studio の [Client Secret (クライアントシークレット)] 項目にコピーします。コネクタをテストする場合、その他の設定は無視できます。

  8. [OK] をクリックします。

  9. [Operation (操作)] 項目をクリックし、[Publish (パブリッシュ)] や [Consume (コンシューム)] などの操作を指定します。

  10. Publish または Consume 操作を使用する場合は、[Destination (宛先)] を Anypoint Platform で設定したキューまたはメッセージ交換の名前として指定します。

  11. Publish 操作の場合、[Message ID (メッセージ ID)] 項目は空白のままにできます。特定のメッセージ ID をパブリッシュする場合はメッセージ ID を指定します。メッセージ ID を設定しない場合、MQ は、キューに送信されるメッセージごとに一意のメッセージ ID を自動生成します。FIFO キューをパブリッシュするとき、メッセージ ID を指定し、そのメッセージ ID が複数のメッセージで同じ場合、その同じメッセージ ID を含むメッセージは再配信されません。

使用できる操作は次のとおりです。

操作 説明

Publish (パブリッシュ)

キューまたはメッセージ交換にメッセージをパブリッシュします。

Consume (コンシューム)

キューからメッセージをコンシュームします。

Subscribe (サブスクラブ)

キューからメッセージを待機します。

Ack (肯定応答)

メッセージが適切にコンシュームされたことを示し、インフライト状況からメッセージを削除します。

Nack (否定応答)

メッセージの状況をインフライトからキュー待機中に変更し、再びサブスクライバがコンシュームできるようにします。

各操作の設定項目のリストおよび XML 要素に関する情報は、「Anypoint MQ コネクタリファレンス」を参照してください。

例: DataWeave を使用した MQ ブリッジ

次の例は、Anypoint MQ コネクタと DataWeave を使用してメッセージを JSON に変換する方法を示しています。

<anypoint-mq:default-subscriber-config name="MQ_Configuration">
    <anypoint-mq:connection url="https://mq-us-east-1.anypoint.mulesoft.com/api/v1"
    clientId="${env.clientId}" clientSecret="${env.clientSecrete}"/>
</anypoint-mq:default-subscriber-config>

<flow name="producerFlow">
  <anypoint-mq:subscriber config="MQ_Configuration" destination="${inbound}"/>

  <http:request config-ref="Invoice_API" method="POST" path="/invoicesProcessing" >
    <http:body>#[output application/json ---
    {
        body : payload,
        origin : attributes.message.properties.orgId,
        trackingNumber : attributes.message.id
    }]</http:body>
  </http:request>
</flow>

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub