最近、メッセージングを実装する必要があるプロジェクトに取り組み始めました。実行可能なオプションは次のとおりです。Apache QpidまたはRabbitMq、私のタスクは次のとおりです。
+A+ >>.[Millions Devices (Producers) -- Connected to -- Messaging Server (Clustered -- Qpid or RabbitMQ) ] { 負荷分散)
その後
+B+ >>.[メッセージング サーバー (クラスター化 -- Qpid または RabbitMQ) -- 接続先 -- ゲートウェイ サーバー (クラスター化) ]
その後
+C+ >>.[GateWay サーバー (クラスター) -- 接続先 -- Internet Explorers/Browser (Consumers) ]
+A+ を参照 >>-- 通常は負荷分散のためにメッセージングを使用する必要があり、その後、ゲートウェイ サーバーが生成されたデータを消費者 (ブラウザー) に中継します。
いくつかの負荷分散アルゴリズムを使用して、Broker 内に複数のキューが作成されることを意味します。プロデューサー (デバイス クライアント) -- メッセージのデータを特定のキューに送信し、ラウンド ロビンまたは他の一般的な負荷分散アルゴリズムに基づいてキューに配信します。配信を保証するために Ack も必要になる可能性があり、次にコンシューマーがメッセージを選択しますキューに入れ、さらにリレーします。すべて非常に標準的なものです。
私は AMQP の基礎を学び、Qpid と RabbitMQ の両方の基本的な例を実行しました。ここに私の質問があります:
RabbitMQ または Apache Qpid のいずれかを選択する方法、またはいくつかの実験または何かを提供できるものはありますか?
多かれ少なかれ同様の要件に取り組んだことがある人はいますか? そして、彼/彼女はそれについて何かコメントを提供できますか? または実際にアルゴを実装する前のいくつかの指針、生産者と消費者の実装?
私のプロジェクトは何百万ものデバイスがメッセージングサーバーに接続されていることを期待しているため、私の全体的な要件は負荷分散に関連しています。後でメッセージングデータが中継され、現時点でApache QpidまたはRabbitMQを選択するための大きな混乱があり、両方とも同じように見えます