ActivePivot 4.3.3 では、次のように実現できます。
完全にロードされる前にノードがクラスターに参加するのを防ぐには、「autoStart」ディストリビューション プロパティを false に設定します。
schema.xml ファイルに、次のコードを追加します。
...
<distributionDescription>
<distributedPivotId> xxxx </distributedPivotId>
<clusterId> xxxx </clusterId>
<distributionType> xxxx </distributionType>
<properties>
<entry key="autoStart" value="false" />
</properties>
</distributionDescription>
...
そうすると、ネットワークを介した通信を担当するメッセンジャー コンポーネントが開始されません。手動で行う必要があります。
このコンポーネントを開始するには、その「start()」メソッドを呼び出す必要があります。JMX ツールを使用せずにプログラムで実行する場合は、「ActivePivotManager」コンポーネントを使用する必要があります。ActivePivot の複数のインスタンスを取得するメソッドを提供します。これを使用して、目的の分散 ActivePivot を取得します。
最後に、分散 ActivePivot から「getMessenger()」メソッドを使用して、メッセンジャー コンポーネントを取得し、起動します。検討中のノードがクラスターに参加します。
マネージャーがいると仮定すると、コードは次のようになります。
ADistributedActivePivot myDistributedPivot = (ADistributedActivePivot) manager.getActivePivots().get("myDistributedPivot"); // Change it to the Id of your distributed pivot
myDistributedPivot.getMessenger().start();
ノードをクラスターに参加/脱退させるには、そのメッセンジャーから「pause()」および「resume()」メソッドを自由に使用できます。