1. ホーム
  2. message-queue

[解決済み] メッセージキューとメッセージバス、その違いは?

2022-03-01 09:57:08

質問

また、あるのでしょうか?MBはサブスクライバとパブリッシャの両方を知っていて、新しいメッセージをサブスクライバに通知するメディエータとして機能します(事実上、quot;push"モデル)。一方、MQはどちらかというとquot;pull;モデルで、コンシューマはキューからメッセージを引き出します。

私は完全に道を踏み外しているのでしょうか?

どのように解決するのか?

一般に、ベンダーのソフトウェア製品に関しては、同じような意味で使われており、おっしゃるようなプッシュ型、プル型の強い区別はありません。

その バス vs. キュー は、確かにややレガシーな概念で、最近では IBM MQ や Tibco Rendezvous などのシステムから派生したものです。 MQ はもともと 1:1 システムで、さまざまなシステムを切り離すためのキューでした。

これに対してTibcoは、メッセージング・バックボーンとして販売され、同じトピックに複数のパブリッシャーとサブスクライバーを持つことができました。

しかし、最近ではどちらも(そして新しい競合製品も)お互いの領域で活躍できるようになっています。 どちらも、新しいメッセージのポーリングだけでなく、割り込みを設定することができます。 どちらも様々なシステム間のインタラクションを仲介する。

しかし というフレーズは メッセージキュー は、内部のスレッド内メッセージポンプなどにも使われますが、この文脈では、確かに使い方が違います。 古典的なWindowsのメッセージポンプを考えてみると、これは確かにあなたの言うプルモデルに近いですが、実際はインターアプリやインターボックスよりもイントラアプリに近いものなのです。