第13章 JMS ブローカーを使用したデプロイ
概要
Fuse 7.5 にはデフォルトの内部ブローカーが含まれていませんが、4 つの外部 JMS ブローカーとインターフェイスするように設計されています。
Fuse 7.5 コンテナーには、サポートされる外部ブローカーのブローカークライアントライブラリーが含まれます。
Fuse 7.5 のメッセージングで使用できる外部ブローカー、クライアント、および Camel コンポーネントの組み合わせに関する詳細は、Red Hat Fuse で サポートされる設定 を参照してください。
13.1. AMQ7 クイックスタート リンクのコピーリンクがクリップボードにコピーされました!
クイックスタートは、AMQ7 ブローカーを使用したアプリの設定とデプロイメントを紹介するために提示しています。
クイックスタートのダウンロード
すべてのクイックスタートは、FuseSoftwareDownloads ページからインストールできます。
ダウンロードした zip ファイルの内容をローカルフォルダーに展開します (例: quickstarts という名前のフォルダー)。
クイックスタートの設定
-
quickstarts/camel/camel-jmsフォルダーに移動します。 -
mvn clean installと入力して、クイックスタートをビルドします。 -
ファイル
org.ops4j.connectionfactory-amq7.cfgを/camel/camel-jms/src/mainディレクトリーから Fuse インストールのFUSE_HOME/etcディレクトリーにコピーします。正しいブローカー URL と認証情報の内容を確認してください。デフォルトでは、ブローカー URL は AMQ 7 の CORE プロトコルに従って tcp://localhost:61616 に設定されています。認証情報は admin/admin に設定されます。外部ブローカーに合わせてこれらの詳細を変更してください。 -
Linux では
./bin/fuseを実行し、Windows ではbin\fuse.batを実行して Fuse を起動します。 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 が提供されます。
-
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
クイックスタートの実行
-
Camel ルートが実行されると、
/camel/camel-jms/work/jms/inputディレクトリーが作成されます。ファイルを/camel/camel-jms/src/main/dataディレクトリーから/camel/camel-jms/work/jms/inputディレクトリーにコピーします。 .../src/main/dataファイルにコピーされたファイルは注文ファイルです。1 分待ってから、/camel/camel-jms/work/jms/outputディレクトリーを確認します。ファイルは、宛先の国に応じて個別のディレクトリーに分類されます。-
/camel/camel-jms/work/jms/output/others/のorder1.xml、order2.xmlおよびorder4.xml -
/camel/camel-jms/work/jms/output/usのorder3.xmlおよびorder5.xml -
/camel/camel-jms/work/jms/output/frのorder6.xml
-
-
log:displayを使用してログメッセージを表示します。
Receiving order order1.xml
Sending order order1.xml to another country
Done processing order1.xml
- 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