Menu Close

第13章 JMS ブローカーを使用したデプロイ

概要

Fuse 7.9 にはデフォルトの内部ブローカーが含まれていませんが、4 つの外部 JMS ブローカーとインターフェースするように設計されています。

Fuse 7.9 コンテナーには、サポートされる外部ブローカーのブローカークライアントライブラリーが含まれます。

Fuse 7.9 のメッセージングで使用できる外部ブローカー、クライアント、および Camel コンポーネントの組み合わせに関する詳細は、「Red Hat Fuse でサポートされる構成」を参照してください。

13.1. AMQ 7 クイックスタート

クイックスタートは、AMQ7 ブローカーを使用したアプリケーションのセットアップとデプロイメントを実証するために提供されます。

クイックスタートのダウンロード

Fuse Software Downloads ページからすべてのクイックスタートをインストールできます。

ダウンロードした zip ファイルの内容をローカルフォルダーに展開します(例: quickstarts という名前のフォルダー)。

クイックスタートの設定

  1. quickstarts/camel/camel-jms ディレクトリーに移動します。
  2. mvn clean install を入力してクイックスタートをビルドします。
  3. /camel/camel -jms/src/main ディレクトリーから Fuse インストールの FUSE_HOME/etc ディレクトリーに org.ops4j.connectionfactory- amq7.cfg ファイルをコピーします。正しいブローカー URLと クレデンシャルの内容を確認します。デフォルトでは、ブローカー URL は AMQ 7 の CORE プロトコルに従って tcp://localhost:61616 に設定されます。クレデンシャルは admin/admin に設定されます。外部ブローカーに合わせてこれらの詳細を変更します。
  4. Windows で ./bin/fuse on Linux または bin\fuse.bat を実行して、Fuse を起動します。
  5. Fuse コンソールで以下のコマンドを入力します。

    feature:install pax-jms-pool artemis-jms-client camel-blueprint camel-jms
    
    install -s mvn:org.jboss.fuse.quickstarts/camel-jms/${project.version}

    バンドルがデプロイされると、Fuse はバンドル ID を提供します。

  6. log:display を入力して、起動ログ情報を表示します。バンドルが正常にデプロイされたことを確認します。
12:13:50.445 INFO [Blueprint Event Dispatcher: 1] Attempting to start Camel Context jms-example-context
12:13:50.446 INFO [Blueprint Event Dispatcher: 1] Apache Camel 2.21.0.fuse-000030 (CamelContext: jms-example-context) is starting
12:13:50.446 INFO [Blueprint Event Dispatcher: 1] JMX is enabled
12:13:50.528 INFO [Blueprint Event Dispatcher: 1] StreamCaching is not in use. If using streams then its recommended to enable stream caching. See more details at http://camel.apache.org/stream-caching.html
12:13:50.553 INFO [Blueprint Event Dispatcher: 1] Route: file-to-jms-route started and consuming from: file://work/jms/input
12:13:50.555 INFO [Blueprint Event Dispatcher: 1] Route: jms-cbr-route started and consuming from: jms://queue:incomingOrders?transacted=true
12:13:50.556 INFO [Blueprint Event Dispatcher: 1] Total 2 routes, of which 2 are started

クイックスタートを実行します。

  1. Camel ルートが実行されると、/camel/camel-jms/work/jms/input ディレクトリーが作成されます。/camel/camel-jms/src/main/data ディレクトリーから /camel/camel-jms/work/jms/input ディレクトリーにコピーします。
  2. …​/src/main/data ファイルにコピーされたファイルはオーダーファイルです。数分待ってから、/camel/camel-jms/work/jms/output ディレクトリーを確認します。ファイルは、宛先の国に応じて、個別のディレクトリーに分類されます。

    • /camel/camel-jms/work/jms/output/others/ order1.xml、order2.xml および order4. xml
    • order3.xml and order5.xml in /camel/camel-jms/work/jms/output/us
    • order6.xml in /camel/camel-jms/work/jms/output/fr
  3. log:display を使用してログメッセージを表示します。
Receiving order order1.xml
Sending order order1.xml to another country
Done processing order1.xml
  1. Camel コマンドはコンテキストの詳細を表示します。

camel:context-list を使用してコンテキストの詳細を表示します。

Context               Status              Total #       Failed #     Inflight #   Uptime
-------               ------              -------       --------     ----------   ------
jms-example-context   Started                  12              0              0   3 minutes

camel:route-list を使用して、コンテキストに Camel ルートを表示します。

Context               Route               Status              Total #       Failed #     Inflight #   Uptime
-------               -----               ------              -------       --------     ----------   ------
jms-example-context   file-to-jms-route   Started                   6              0              0   3 minutes
jms-example-context   jms-cbr-route       Started                   6              0              0   3 minutes

camel:route-info を使用して、エクスチェンジの統計を表示します。

karaf@root()> camel:route-info jms-cbr-route jms-example-context
Camel Route jms-cbr-route
    Camel Context: jms-example-context
    State: Started
    State: Started

Statistics
    Exchanges Total: 6
    Exchanges Completed: 6
    Exchanges Failed: 0
    Exchanges Inflight: 0
    Min Processing Time: 2 ms
    Max Processing Time: 12 ms
    Mean Processing Time: 4 ms
    Total Processing Time: 29 ms
    Last Processing Time: 4 ms
    Delta Processing Time: 1 ms
    Start Statistics Date: 2018-01-30 12:13:50
    Reset Statistics Date: 2018-01-30 12:13:50
    First Exchange Date: 2018-01-30 12:19:47
    Last Exchange Date: 2018-01-30 12:19:47