私は qpid を使用しており、今はブローカーの少ないメッセージング システムに移行しようとしていますが、Pub Sub パターンのネットワーク トラフィックについて本当に混乱しています。次のドキュメントを読みました: http://www.250bpm.com/pubsub#toc4 サブスクリプションの転送が実際にどのように行われるのか本当に混乱していますか?
ゼロ mq は、基盤となるネットワーク トポロジに依存しない必要があると考えていましたが、そうではないようです。すべてのノードは、何を転送し、何を転送しないかをどのように認識していますか (たとえば、何百万ものサブスクライバーとパブリッシャーが存在する可能性のある eth ネットワークでは、メッセージ ツリーは実現可能ではないように思えます。ゼロ mq が存在する場合、彼らはそれらに接続されたサブスクライバーにどのようにパケットを転送しますか?彼らにとってそれは単なる通常のパケットであり、同じパケットであってもデータ パケットの複数のコピーを転送するだけでしょうか?私はネットワークの専門家ではないので、そうかもしれませんメッセージ ツリーと、それがどのように作成されるかについて明らかな何かが欠けているのでしょうか? この配布ツリーがどのように作成されるか、どのノードが xpub および xsub ソケットで作成されるかについて、いくつかの例を挙げていただけますか?
デバイス (リンクで使用される用語) はブローカーのようなものです。記事全体では、デバイスが実際にブローカのようなもの、それは pub sub の場合、メッセージング ツリー内のすべてのノードがデバイスであるという定義を満たさなければならないことを意味するのでしょうか。
また、ツリー ダイアグラム (P、D、C で構成されるリンクから) では、最初は C と C が 2 つのサブスクライバーであり、P が唯一のパブリッシャー (D はランダム ホップ) であると想定していましたが、今では D がゼロ分子量。C は D にサブスクライブし、D は P にサブスクライブしますか? または両方の C が P にサブスクライブするだけです (より一般的には、各ノードは でのみその親にサブスクライブします)。初心者の質問で申し訳ありませんが、ここで明らかなことを見逃しているようです。誰かがより多くの洞察を与えることができれば幸いです。