|
|
JMS 補完機能 (負荷分散機能 2 リピーター) |
|
複数 JMS サーバーの水平的配置による負荷分散 -- JMS サーバー ボトルネックの解消
リピーターは、
- FioranoMQ サーバーを『水平的』に分散させて配置し、
- それらのサーバー間で負荷の分散を行う
ものです。
ここでいう 『水平的』 とは、ディスパッチャーの 『垂直的』 なクラスター構成に対比したものです。
ディスパッチャについては、 ディスパッチャ を参照してください。
FioranoMQ では、複数の FioranoMQ JMS サーバーを同一 LAN 上の複数のマシンや地理的に離れた (イントラネットやインターネットを介した) 拠点に配置することができます。
こうすることによって、一極集中を避け、負荷の分散も実現できます。
リピータの役割
サーバー間通信を担っているのが、FioranoMQ リピーターです。
リピーターは、JMS クライアントとして機能するよう JMS API を用いてプログラミングされたコンポーネントです。
すなわち、サーバーからメッセージを受け取る場合はコンシューマーとして働き、次のサーバーにメッセージを送る場合にはプロデューサとして働きます。
リピーターと各 FiornaoMQ サーバーとの間は、
- 恒久接続が設定されています。
恒久接続については、 恒久接続 を参照してください。
- メッセージ セレクション
- TCP、HTTP、SSL
がサポートされています。
サーバー配置のトポロジー
リピーターによるサーバー接続は柔軟に行え、次のようなトポロジーが考えられます。いずれのトポロジーにおいても、FioranoMQ JMS サーバーは、LAN もしくは WAN 上のどちらに存在していてもかまいません。
以下の説明では、JMS サーバーを JMS の用語に従って、『プロバイダ』としています。
リピーターをハブとした "ハブ&スポーク"
リピーターをハブとし、複数のプロバイダを配置した "ハブ & スポーク" の構成です。リピータは、すべてのプロバイダ間のメッセージ送受信を行います。したがって、例えば、プロバイダ 1 のクライアントからプロバイダ 2 もしくはプロバイダ 3 またはプロバイダ 4 のクライアントへメッセージを渡すことが可能となります。
ハブ&スポーク形式
バス形式
この形式は、プロバイダがあたかも 1 本のメッセージ "バス" を形成し、各拠点をまたがって敷設さるているかのように機能します。
リピーター 1 は、プロバイダ 1 のクライアントとプロバイダ 2 のクライアントとの間のメッセージしか送受信できず、プロバイダ 3 のクライアントとのメッセージ送受信は行えないことに注意してください。
バス形式
メッシュ形式
メッシュ トポロジーにおいては、すべてのプロバイダとつながったリピーターを複数配置します。これは、上述のハブ & スポークと同じサーバー間通信となりますが、リピーターが複数あることでリピーターの負荷分散が図れます。
メッシュ形式
|
|
|
|
|
|