5.2. メッセージチャネル
概要
メッセージチャネル は、メッセージングシステムの論理チャネルです。つまり、異なるメッセージチャネルにメッセージを送信することで、メッセージを異なるメッセージタイプに分類する初歩的な方法を提供します。メッセージチャネルの例として、メッセージキューとメッセージトピックが挙げられます。論理チャネルは物理チャネルと同じでは ない ことに注意してください。論理チャネルを物理的に認識する方法はいくつかあります。
Apache Camel では、メッセージチャネルは 図5.2「Message Channel パターン」 のとおり、メッセージ指向コンポーネントのエンドポイント URI によって表されます。
図5.2 Message Channel パターン
![Message Channel パターン](https://access.redhat.com/webassets/avalon/d/Red_Hat_Fuse-7.11-Apache_Camel_Development_Guide-ja-JP/images/e666a7f7dfae58e99223a8c531615549/message_channel.gif)
メッセージ指向コンポーネント
Apache Camel の以下のメッセージ指向コンポーネントによって、メッセージチャネルの概念がサポートされます。
ActiveMQ
ActiveMQ では、メッセージチャネルは キュー または トピック によって表されます。特定のキューのエンドポイント URI である QueueName の形式は次のとおりです。
activemq:QueueName
特定のトピックのエンドポイント URI である TopicName の形式は次のとおりです。
activemq:topic:TopicName
たとえば、Foo.Bar
キューにメッセージを送信するには、以下のエンドポイント URI を使用します。
activemq:Foo.Bar
ActiveMQ コンポーネントの設定に関する詳細や手順については、Apache Camel コンポーネントリファレンスガイド の ActiveMQ を参照してください。
JMS
Java Messaging Service (JMS) は、さまざまな種類のメッセージシステムにアクセスするために使用される汎用ラッパー層です (たとえば、ActiveMQ、MQSeries、Tibco、BEA、Sonic などをラップするために使用できます)。JMS では、メッセージチャネルはキューまたはトピックによって表されます。特定のキューのエンドポイント URI である QueueName の形式は次のとおりです。
jms:QueueName
特定のトピックのエンドポイント URI である TopicName の形式は次のとおりです。
jms:topic:TopicName
JMS コンポーネントの設定に関する詳細や手順は、Apache Camel コンポーネントリファレンスガイド の Jms を参照してください。
AMQP
AMQP では、メッセージチャネルはキューまたはトピックで表されます。特定のキューのエンドポイント URI である QueueName の形式は次のとおりです。
amqp:QueueName
特定のトピックのエンドポイント URI である TopicName の形式は次のとおりです。
amqp:topic:TopicName
AMQP コンポーネントの設定に関する詳細や手順は、Apache Camel コンポーネントリファレンスガイド の Amqp を参照してください。