これですべての要件が満たされるわけではありませんが、JGroupsを確認する必要があります。
(信頼できるマルチキャスト通信のためのツールキット)
基本的に、これは、マルチキャストまたはユニキャストを使用してさまざまなプロトコルを介して相互に同期を保つことができるクラスター化されたノードを作成するための Java ライブラリです。必要な機能スタックを構築するのに役立つビルディング ブロックの豊富なセットが含まれています。スタックのカスタマイズは、ビルディング ブロックおよび/または独自のカスタム状態管理またはクラスター呼び出し可能な「ビジネス メソッド」を使用して実装できます。つまり、呼び出されるビジネス メソッドを定義int getOpenPortCount()
して、単一のノードではなくクラスターで呼び出すことができます。接続された各ノードは、ローカルでメソッドを呼び出し、呼び出しの結果を返します。その結果、クラスター呼び出しint[]
は、JGroups クラスター上のノード数の長さの値を [効果的に] 返します。
いくつかの JMX クライアント プラットフォームを提供する必要があります。
これが何を意味するのか完全にはわかりませんが、JMX-Connector自体は組み込まれていません。ただし、個々のノードと直接通信したり、JGroups API を使用してクラスターを介してすべてのノードと通信したりできるため、必要ない場合があります。
テストを実行して結果を確認するための GUI/JMX インターフェイス
このようなものは見つからないと思いますが、基本的に純粋な Java を使用するため、JGroups API、JMX API、jUnit (または TestNG)、および Eclipse ベースのテストランナーを組み合わせて使用できます。これはかなりまともなテスト ハーネスと視覚化 UI を提供します。
スケジューリング
JGroups TimeScheduler、Quartzを使用するか、単にScheduledThreadPoolExecutorを使用して、クラスター全体で実行されるイベントをスケジュールできます。
SNMP監視
JGroups は監視用の JMX をサポートしており、 JVM の SNMP エージェントを介してブリッジすることができます。この jboss 固有のリンクは、これを実装する方法のアイデアを提供します。