3

HA を備えた 2 つ (またはそれ以上) のノード クラスターとして RabbitMQ をセットアップしたいと考えています。

ユース ケース: クライアント プロデューサー アプリ (C#.NET) は、クラスターに 2 つのノードがあり、クラスターに発行することを認識しています。さまざまなコンシューマー アプリ (C#.NET も含む) がクラスターに接続し、プロデューサーによって生成されたすべてのメッセージを取得します。少なくとも 1 つのノードが稼働している限り、プロデューサーとコンシューマーはすべてエラーなしで動作し続けます。ノード A と B が実行中で、B がしばらく停止してから再起動し、しばらくして A が停止した場合、常に少なくとも 1 つのノードが稼働しているため、クライアントはすべてエラーを受け取ることなく機能し続けます。

箱から出してこのように動作させることはできますか?

Windows/.NET アプリケーション環境により適切な (商用可) 他の MQ はありますか?

4

2 に答える 2

7

RabbitMQ v2.6.0は、アクティブ/アクティブ クラスタリングを使用した高可用性キューをサポートするようになりました。Microsoft と他の多くの企業は、C# バインディングを持ち、アクティブ/アクティブ HA クラスタリングもサポートするApache QPidで協力しています。

于 2011-11-01T21:05:03.397 に答える
6

箱から出してこのように動作させることはできますか?

いいえ。ノードがダウンすると、すべての接続が閉じられます。AMQP 接続はステートフルであるため、これを回避する方法はありません。達成できることは、1) ブローカーがダウンする、2) すべてのクライアントが切断される、3) クライアントが他のノードに接続する (元のように偽装する) ということです。

ちなみに、rabbit は現在、アクティブ-アクティブ HA クラスタリングをサポートしていません。アクティブ/パッシブ クラスタリング論理クラスタリングの形式をサポートしています(これは、探しているものかもしれません)。

于 2010-11-11T21:39:48.460 に答える