ユニット・テストやクイック再起動を実行する場合、ネットワークを回避して単一サーバー・モードで実行するとより便利です。Coherenceを単一サーバー上で実行するよう制限するには、マルチキャスト・パケットのTTLを0に設定し、ユニキャストIPアドレスを設定します。
これらのプロパティを構成するには、コマンドラインでシステム・プロパティを宣言するか、オペレーション構成ディスクリプタ(tangosol-coherence.xml
ファイル)で値を編集します。
tangosol-coherence.xml
ファイルで、<multicast-listener>
要素の<time-to-live>
サブ要素を使用してマルチキャスト・パケットの存続時間値を定義します。この<time-to-live>
値は、パケットがネットワーク・セグメント間を横断するホップの最大数を決定します。このサブ要素を0
に設定すると、パケットが発信元のマシンから発信されなくなります。
ユニキャストIPアドレスは、<unicast-listener>
要素の<address>
サブ要素で定義します。このサブ要素は、ソケットがリスニングまたは公開するIPアドレスを指定します。また、ループバックにルーティングする必要もあります。使用されていないIPアドレスをこのサブ要素に設定すると、Coherenceがネットワークに参加しなくなります。
注意: localhostをループバック・アドレスとして定義しているシステムではlocalhostの設定が機能しない場合があります。その場合は、マシンの名前または固有のIPアドレスを指定します。 |
次のXMLコードの一部分は、tangosol-coherence.xml
ファイルでの単一サーバー・モードの構成を示しています。
Coherenceには、マルチキャスト・パケットのTTLおよび単一サーバー・モード用のユニキャストIPアドレスをコマンドラインで設定できるシステム・プロパティが定義されています。この機能は、単一のJVMの設定を変更する必要がある場合や、ディスクリプタ・ファイルとは異なる設定でアプリケーションを起動する場合に役立ちます。
単一サーバー・モードを定義するには、次のシステム・プロパティを使用します。
tangosol.coherence.ttl
: マルチキャスト・パケットのTTL。0に設定するとパケットが発信元のマシンから発信されなくなります。
tangosol.coherence.localhost
: ユニキャストIPアドレス。
例7-2のコマンドラインのサンプルは、単一サーバー・モードでのCoherenceの起動を示しています。
例7-2 Coherenceを単一サーバー・モードで起動するコマンド
java -Dtangosol.coherence.localhost=127.0.0.1 -Dtangosol.coherence.ttl=0 -jar coherence.jar
Coherenceで定義されるシステム・プロパティの詳細は、付録C「コマンドラインのオーバーライド」を参照してください。