この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 14746|答える: 1

activemqキューとトピックの違いは次の通りです。

[リンクをコピー]
掲載地 2017/07/14 9:59:30 | | | |
QueueとTopicはJMSでサポートされている2つのメッセージングモデルです:
        1. ポイント・ツー・ポイント(PTP)キューメッセージングモデル:
        このメッセージングモデルでは、あるアプリケーション(すなわちメッセージプロデューサー)が別のアプリケーション(すなわちメッセージコンシューマー)にメッセージを送信できます。 この配信モデルでは、メッセージ宛先タイプはキュー(すなわち、Destination Interface実装クラスインスタンスはセッションインターフェース実装クラスインスタンスがcreateQueueメソッドを呼び出し、キュー名を渡すことで作成されます)。 メッセージはまずメッセージサーバー側の特定のキューに配信され、そこからそのキューを聞いている消費者にメッセージが届きます。 同じキューは複数のメッセージプロデューサーやメッセージコンシューマーを関連付けることができますが、1つのメッセージは1つのメッセージコンシューマーにしか届けられません。 複数のメッセージコンシューマーがキュー上のメッセージを聞いている場合、JMSメッセージサーバーは「先着順」の原則に基づき、どのメッセージコンシューマーが次のメッセージを受け取るかを決定します。 メッセージコンシューマーがキューを聞いていない場合、メッセージはメッセージコンシューマーがキューに接続するまでキュー内に残ります。 このメッセージングモデルは、伝統的な意味での怠惰またはポーリングモデルです。 このモデルでは、メッセージは自動的にメッセージコンシューマーにプッシュされるのではなく、メッセージコンシューマーがキューからリクエストします。
        2. 公開/購読(pub/sub)トピックメッセージングモデル:
        このメッセージングモデルにより、アプリケーションは複数のメッセージ消費者に単一のメッセージを送信できます。 この配信モデルでは、メッセージの宛先タイプはトピックです(すなわち、Destination Interface実装クラスインスタンスはセッションインターフェースの実装クラスインスタンスがcreateTopicメソッドを呼び出してトピック名を渡すことで作成されます)。 メッセージはまずメッセージサーバー内の特定のトピックにメッセージプロデューサーによって公開され、その後、そのトピックを購読したすべての消費者に配信されます。 トピック目標は長期の購読もサポートします。 長期サブスクリプションとは、消費者がトピック目標に登録しているものの、メッセージが目的地に到達した時点で非アクティブになることを意味します。 消費者が再びアクティブになったときにメッセージが受信されます。 もし消費者がトピック宛先に登録していなければ、そのトピックは長期サブスクリプションに登録した非アクティブな消費者のみにメッセージを保持します。 PTPメッセージングモデルとは異なり、pub/subメッセージングモデルは複数のトピックサブスクライバーが同じメッセージを受け取ることを可能にします。 JMSはすべてのトピック登録者がメッセージを受け取るまでメッセージを保持します。 パブリック/サブのメッセージングモデルは基本的にプッシュモデルです。 このモデルでは、メッセージは自動的にブロードキャストされ、メッセージの利用者は新しいメッセージを得るために積極的にトピックをリクエストしたりポーリングしたりする必要はありません。
        具体的な違いは以下の通りです。

種類
テーマ
キュー
概要
メッセージを公開 購読 メッセージを公開
ポイントツーポイント
国家というものは存在しません
トピックデータはデフォルトでステートレスです。
キューデータはデフォルトでMQサーバーにファイルとして保存されます。例えば、Active MQは通常$AMQ_HOME\data\kr-store\dataの下に保存されます。 DBストアとしても設定可能です。
完全性保証
出版社が公開したすべてのデータが購読者に受け入れられる保証はありません。
キューは受信側がすべてのデータを受信できることを保証します。
メッセージが失われるかどうか
一般的に、出版社がトピックにメッセージを公開すると、そのトピックアドレスを聞いているサブだけがメッセージを受け取ることができます。 もしサブが聞いていなければ、その話題は失われます。
送信者はターゲットキューにメッセージを送信し、受信者はこのキューで非同期にメッセージを受け取ることができます。 受信者がいなくても、キュー上のメッセージは失われません。
メッセージリリース受容ポリシー
1対多のメッセージ公開・受信ポリシーでは、同じトピックアドレスを複数のサブが受信することで、パブリッシャーから送信されるメッセージを受け取ることができます。 サブはMQサーバーへの通知を受け取ります
1対1のメッセージ公開・受信ポリシーでは、送信側から送信されたメッセージは1人の受信者のみが受信可能です。 受信者が受信した後、MQサーバーは受信を通知し、MQサーバーはキュー内のメッセージを削除または他の処理を行います。





先の:Google AdSenseとGoogle AdWordsの違い
次に:.net/c# 淘宝から列車バッチ設定群衆まで [ソースコード]
 地主| 掲載地 2018/03/29 13:09:01 |

JMSのキューメッセージ配信プロセスは以下の通りです:



キューモードでは、パブリッシャーがメッセージを公開し、以下の受信者がキュー順に受信します。例えば、10件のメッセージが公開された場合、2つの受信者AとBは重複せずに合計10件のメッセージを受け取ります。

JMSのトピックメッセージングプロセスは以下の通りです:



トピックモードでは、パブリッシャーがメッセージを公開し、受信者AとBの2人が購読した場合、10件のメッセージが公開され、AとBはそれぞれ10件ずつ受信します。
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com