ホームページ  >  記事  >  Java  >  JMS Active MQ メッセージ送信 (詳細な図とテキストの説明)

JMS Active MQ メッセージ送信 (詳細な図とテキストの説明)

怪我咯
怪我咯オリジナル
2017-06-30 10:47:572176ブラウズ

以下のエディターは、JMS Active MQ メッセージ送信 (詳細な説明) に関する記事をお届けします。編集者はこれがとても良いものだと思ったので、皆さんの参考として今から共有します。編集者をフォローして見てみましょう

この記事では Active MQ5.6 を使用しています

1. メッセージ ブローカー: メッセージ エクスチェンジャーは、メッセージを管理するコンテナーです。 ActiveMQ は複数のブローカーを作成できます。クライアントが ActiveMQ と対話するとき、ブローカーは ${MQ_HOME}confactivemq.

xml

で構成されます。

2. コネクタ

(1) トランスポートコネクタ

transportConnectors コネクタ: ブローカー、メッセージプロデューサー、メッセージコンシューマー間の対話を確立します。

トランスポートコネクタで一般的に使用されるプロトコル:

Active MQ で一般的に使用される接続プロトコル: tcp、udp、nio、ssl、http、https、vm。 SSL プロトコルを使用する場合は、証明書を構成する必要があります。http または https を使用する場合は、メッセージの送受信に httpclient を使用する必要があります。

(1)TCP デフォルトプロトコル

tcp://hostname:port?key=value&key=value 次のパラメータはオプションです TCP プロトコルを使用する利点

効率的: このプロトコル接続OpenWire プロトコルは、メッセージをバイト ストリームに変換することにより、パフォーマンスが非常に優れています 可用性: TCP は非常に広く使用されているネットワーク プロトコルで、基本的にすべてのプラットフォームでサポートされています

TCP 構成例 conf/activemq.xml:

    <transportConnectors>
      <!--activemq 的默认连接 tcp-->
      <transportConnector name="openwire" uri="tcp://0.0.0.0:61616"/>
    </transportConnectors>

( 2)、NIO

a. NIO プロトコルは TCP プロトコルに似ていますが、NIO は基礎となるアクセス操作により重点を置いています。これにより、開発者は同じリソースに対してより多くのクライアント呼び出しとサーバー上の負荷を増やすことができます。 b. NIO プロトコルの使用に適したシナリオ: ブローカーに接続するクライアントの数は、オペレーティング システムのスレッド数によって制限されます。したがって、NIO の実装では TCP よりも実行するスレッドが少なくて済むため、NIO プロトコルを使用することをお勧めします

。NIO は、TCP

c の URI 形式よりも優れたパフォーマンスを提供します。 NIO 接続: nio://hostname:port?key=value 以下のパラメーターはオプションです

d、NIO 構成例 conf/activemq.xml:

<transportConnectors>
      <!-- 设置一个NIO的连接-->
      <transportConnector name="nio" uri="nio://0.0.0.0:61617"/>
    </transportConnectors>

(3)、UDP

a、違いUDP と TCP の間 TCP は生のストリーム配信プロトコルであり、データ パケットが保証される、つまりデータ パケットがコピーされたり失われたりすることはありません。一方、UDP はデータ パケットの配信を保証しません TCP も安定した信頼性の高いデータ パケット配信プロトコルであり、配信中にデータが失われることはありません。これにより、送信者と受信者間の信頼性の高い通信が保証されます。それどころか、UDP は単なるリンク プロトコルであるため、信頼性がありません

TCP は安定した信頼性の高いシナリオで使用され、通常、高速データ転送がデータ損失を恐れないシナリオで使用され、ActiveMQ は次のような場合に使用されます。ファイアウォールを使用、UDP

b のみ、UDP 接続の URI 形式: udp://hostname:port?key=value

c、構成インスタンス conf/activemq.xml

<transportConnectors>
  <transportConnector name="udp" uri="udp://localhost:61618"/>
</transportConnectors>

(4)、SSL

最下層は TCP プロトコルですが、送信データは暗号化されますa. 該当するシナリオ: MQ は外部ネットワークに公開され、クライアントとブローカー間の通信が必要ですb.

b-1、SSL プロトコルの作成:

b-2、ブローカー SSL プロトコルの構成 conf/activemq.xml:

 <sslContext>
  <sslContext keyStore="F:/beifeng/apache-activemq-5.6.0/conf/mybroker.ks"
   keyStorePassword="test123" />
</sslContext>

b-3、クライアント SSL プロトコルの構成:

c、SSL 接続の URI 形式: ssl:/ /hostname:port?key=value

d、インスタンスconf/activemq.xmlを設定します

<transportConnectors>
   <transportConnector name="ssl" uri="ssl://localhost:61619"/>
 </transportConnectors>

(5) HTTP、HTTPS

a、桟橋コンテナを通じてhttpプロトコルのmqメッセージを受信します

b. 基本的な HTTP サービスの通過のみを許可するネットワーク環境の場合c. httpclient 経由でメッセージを送受信するには、追加の Java パッケージ Httpclient、Xstream、activemq-optional

d、URI: http:// を追加する必要があります。 hostname:port? key=value

e、構成インスタンス conf/activemq.xml:

<transportConnectors>
  <transportConnector name="http" uri="http://localhost:8080"/>
</transportConnectors>

HTTPS を構成するには、jetty.xml で関連する証明書を構成する必要があります HTTPS= HTTP+SSL

( 2.) ネットワーク コネクタ (NetWorkConnectors)

NetWorkConnectors: 主に ActiveMq クラスターを展開するときに、Broke と Broke の間の対話に使用されます。

JMS Active MQ メッセージ送信に関する上記の記事 (詳細な説明) は、すべて編集者が共有した内容です。参考にしていただければ幸いです。スクリプト ホームをサポートしていただければ幸いです。

以上がJMS Active MQ メッセージ送信 (詳細な図とテキストの説明)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。