ネイティブのJavaメッセージングクライアント

ネイティブのJava  クライアントメッセージング

 

 

 

ダイレクト  ・スイッチ

  DirectProducer:ダイレクト型交換プロデューサー

  NormalConsumer:普通の消費者

  MulitBindConsumer:交換体に結合キュー、ルーティング複数のキーを結合させ、結合すなわち複数 MulitChannelConsumerを:次に接続された複数のチャネルを可能にします

  MulitConsumerOneQueue:コンシューマ・キューの複数の消費者の間で送信されるポーリングメッセージを示すであろう。

 

 

 

 

一般的な使用での生産者と消費者

  DirectProducer:ダイレクト型交換プロデューサー

  NormalConsumer:普通の消費者

  プロデューサーとしてDirectProducerを使用して、NormalConsumerは、消費者として、消費者は、キューをバインド

 

 

 

複数のキューと交換バインディング

  DirectProducer:ダイレクト型交換プロデューサー

  NormalConsumer:普通の消費者

  MultiBindConsumer:交換体に結合キュー、ルーティングキーを複数結合することが許可されている、すなわち、複数の結合の比較:単一の結合消費者のみ指定されたメッセージを受信し、消費者が複数結合することができますすべてのメッセージを受信しました。

 

 

 

接続チャネルの複数

  DirectProducer:ダイレクト型交換プロデューサー

  MultiChannelConsumer:下部接続チャネルの複数の可能

  接続、我々は、通信のための複数のチャネルをシミュレートする複数のスレッドを使用することができます。これは、多重化を行うことができます。

 

複数コンシューマ・キュー

  MultiConsumerOneQueue:コンシューマ・キューの複数の消費者の間で送信されるポーリングメッセージを示すであろう。

 

 

 

扇形に広がります

  結合キューにメッセージを放送

   どんなに私たちは、ルーティングキー生産者と消費者を調整する方法、メッセージの受け入れに影響を与えません。

 

 

トピック

  使用して、異なるソースからのメッセージが同じキューに到着するように、「*」や「#」を「」ルーティングキーをいくつかの識別子に、「*」マッチ1 番目、「#」は、一つ以上と一致します。このような例

    仮定交換topic_course、

    講師は、王、マーク、ジェームズがあります

    技術的な話題は、カフカ、JVM、Redisのを持っています

    コースのセクションでは、A、B、Cを有しています

   以下のための重要なルーティングルール 講師など+ + + +技術トピックコースの章を、「」「」:。King.kafka.A 。

*と#の違い:

  我々はking.kafka.Aにキールートを送信する場合

  だから、キューは王をバインドされている場合。*  と一致しません

  キューは王をバインドされている場合。#  と一致することできます

 

1、すべてのコースに注意を払う、どのようにしますか?

  声明とするキュースイッチにバインドされていますchannel.queueBind(QUEUENAME、TopicProducer.EXCHANGE_NAME、「#」);

 

王の懸念2、  すべてのコースの教師、どのようにしますか?

  ステートメントとキュースイッチにバインドされていますchannel.queueBind(QUEUENAME、TopicProducer.EXCHANGE_NAME、「キング#」);

注意:王*はここで変更した場合  ので、それは何の情報も表示されません「*」1に一致する(スプリットアイデンティティの数を使用して。)

 

3、懸念王  すべての教師のセクション、どのようにしますか?

  ステートメントとは、キュースイッチにバインドされていますchannel.queueBind(QUEUENAME、TopicProducer.EXCHANGE_NAME、 "王の#のA ..");

  または交換器にキューとバウンドを宣言:channel.queueBind(QUEUENAME、TopicProducer.EXCHANGE_NAME、「王* ..」);

 

 

カフカ心配4、  すべてのコース、どのようにしますか?

  ステートメントとは、キュースイッチにバインドされていますchannel.queueBind(QUEUENAME、TopicProducer.EXCHANGE_NAME、 "#.kafka#");

 

すべてのBの懸念5、  セクション、どのようにしますか?

  ステートメントとキュースイッチにバインドされていますchannel.queueBind(QUEUENAME、TopicProducer.EXCHANGE_NAME、 "#1 .B");

 

6、懸念王  先生は、  カフカ   Aを  行う方法を、セクションを?

  ステートメントとは、キュースイッチにバインドされていますchannel.queueBind(QUEUENAME、TopicProducer.EXCHANGE_NAME、「king.kafka.A」);

 

 

 

おすすめ

転載: www.cnblogs.com/Soy-technology/p/11570215.html