JMSアクティブMQメッセージ送信

巴扎黑
リリース: 2017-06-26 11:38:45
オリジナル
1520 人が閲覧しました

この記事では 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 形式の NIO を使用することをお勧めします。 connection: 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 UDP と TCP の違い

    TCP は生のストリーム配信プロトコルであり、データ パケットが保証される、つまり、データ パケットがコピーされずに失われることはありません。一方、UDP はデータ パケットの配信を保証しません
  • TCP も安定した信頼性の高いデータ パケット配信プロトコルです。つまり、配信プロセス中にデータが失われることはありません。これにより、送信者と受信者間の信頼性の高い通信が保証されます。それどころか、UDP は単なるリンク プロトコルであるため、信頼性がありません
  • TCP は安定した信頼性の高いシナリオで使用されます。UDP は通常、高速データ送信がデータ損失を恐れないシナリオで使用され、ActiveMQ が通過する場合に使用されます。 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 プロトコルの構成:


       <sslContext><sslContext keyStore="F:/beifeng/apache-activemq-5.6.0/conf/mybroker.ks"  keyStorePassword="test123" />   </sslContext>
ログイン後にコピー

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

c。 connection: 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アクティブMQメッセージ送信の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート