この章では、Oracle Coherenceで使用される操作設定および実行時の設定を制御する要素について説明します。これらの設定を使用して、Coherenceのクラスタ化、通信およびデータ管理サービスを作成、構成および維持します。また、これらの要素が含まれるデプロイメント・ディスクリプタ・ファイルについても説明します。
クラスタ化、通信およびデータ管理サービスを作成および構成するために操作設定および実行時の設定を制御する要素は、次の2つのデプロイメント・ディスクリプタのいずれかで指定できます。
tangosol-coherence.xml
ディスクリプタ。このディスクリプタでは、クラスタ化、通信およびデータ管理サービスを制御する操作要素および実行時要素を指定します。オプションのtangosol-coherence-override.xml
オーバーライド・ファイル。このファイルでは、調整するオペレーション・ディスクリプタのサブセットのみを指定します。詳細は、「オペレーション・オーバーライド・ファイル(tangosol-coherence-override.xml)」を参照してください。
キャッシュの構成の詳細は、付録D「キャッシュ・コンフィギュレーションの要素」を参照してください。
Coherenceをデプロイする場合に重要なことは、tangosol-coherence.xml
ディスクリプタが存在し、それがアプリケーション・クラスパスに位置するようにすることです(他のリソースと同様に、Coherenceはクラスパスで最初に見つかったものを使用します)。(オラクル社のソフトウェア出荷時の)デフォルトでは、tangosol-coherence.xml
がcoherence.jar
にパッケージされています。
Coherenceオペレーション・コンフィギュレーション・デプロイメント・ディスクリプタは、次のDOCTYPE
宣言で開始する必要があります。
例H-1 オペレーション・コンフィギュレーション・デプロイメント・ディスクリプタのDOCTYPE宣言
<!DOCTYPE coherence PUBLIC "-//Oracle, Inc.//DTD Oracle Coherence 3.4//EN""http://www.tangosol.com/dtd/coherence_3_3.dtd">
注意: デフォルトのキャラクタ・セットがASCIIではなくEBCDICである環境にCoherenceをデプロイする場合、このディスクリプタ・ファイルがASCII形式であり、ランタイム環境にバイナリ形式でデプロイされることを確認してください。 |
デフォルトのtangosol-coherence.xml
ファイルに別の定義を指定することもできますが、オペレーション・コンフィギュレーションの最適なアプローチはオーバーライド・ファイルを指定することです。オーバーライド・ファイルには、調整するオペレーション・ディスクリプタのサブセットのみを記述します。オーバーライド・ファイルのデフォルト名はtangosol-coherence-override.xml
で、クラスパスで最初に見つかったインスタンスが使用されます。オーバーライド・ファイルの形式はオペレーション・ディスクリプタと同じですが、すべての要素はオプションであり、欠落している要素はオペレーション・ディスクリプタから簡単にロードされる点が異なります。
オーバーライド・ファイルを複数レベルに構成することもできます。これにより、ステージングと本番など、類似のデプロイメント環境間で追加のチューニングが可能になります。たとえば、Coherence 3.2以降ではこの機能を使用して、デプロイメント・タイプ(評価、デプロイメント、本番)に基づいてロギングの詳細度などが異なる構成を提供できます。ロギングの詳細度の詳細は、「logging-config」の<severity-level>
サブ要素を参照してください。また、特定のカスタマイズについては、coherence.jar
の中のファイルtangosol-coherence-override-eval.xml
、tangosol-coherence-override-dev.xml
およびtangosol-coherence-override-prod.xml
も参照してください。
注意: カスタムのオペレーション・ディスクリプタでなくオーバーライド・ファイルを使用して、調整する設定のみを指定することをお薦めします。 |
Oracle Coherenceには強力なコマンドライン・オーバーライド機能があり、このディスクリプタにsystem-property属性が定義されている場合は、ディスクリプタに定義された要素をJavaコマンドラインからオーバーライドできます。この機能により、すべてのクラスタ・ノードで同じオペレーション・ディスクリプタ(およびオーバーライド・ファイル)を使用し、ノード当たりのカスタマイズをシステム・プロパティとして提供できます。この機能の詳細は、付録L「コマンドラインのオーバーライド」を参照してください。
表H-1には、オペレーション・コンフィギュレーションで使用可能なすべての非終端要素が一覧表示されています。
表H-1 オペレーション・コンフィギュレーションの非終端要素
使用場所: security-config
表H-2は、access-controller
要素で定義可能なサブ要素について説明しています。
表H-2 access-controllerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
|
< |
オプション |
<init-params> <init-param id="1"> <param-type>java.io.File</param-type> <param-value system-property="tangosol.coherence.security.keystore"></param-value> </init-param> <init-param id="2"> <param-type>java.io.File</param-type> <param-value system-property="tangosol.coherence.security.permissions"></param-value> </init-param> </init-params> デフォルトの |
使用場所: well-known-addresses
説明
address-provider
要素は、AddressProvider
インタフェースを実装するアドレス・ファクトリの構成情報を指定します。
要素
表H-3は、address-provider
要素で定義可能なサブ要素について説明しています。
表H-3 address-providerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
|
|
<class-factory-name> |
オプション |
|
<method-name> |
オプション |
|
オプション |
|
使用場所: cluster-config
説明
これを指定すると、クラスタ・メンバーシップが、ユニキャスト・アドレスのコレクションまたはアドレス範囲で指定されたクラスタ・ノードに制限されます。ユニキャスト・アドレスは、認可されたクラスタ・ノードのunicast-listener
要素のアドレス値です。任意の数のhost-address
要素およびhost-range
要素を指定できます。
要素
表H-4は、authorized-hosts
要素で定義可能なサブ要素について説明しています。
表H-4 authorized-hostsのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
IPアドレスまたはホスト名を指定します。これを指定すると、host-addressが指定されたホスト、または指定されたhost-range内のホストのみがクラスタに参加できます。内容のオーバーライド属性 |
オプション |
IPアドレスの範囲を指定します。これを指定すると、host-addressが指定されたホスト、または指定されたhost-range内のホストのみがクラスタに参加できます。内容のオーバーライド属性 |
内容のオーバーライド属性xml-override
およびid
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。「要素の属性」を参照してください。
使用場所: packet-publisher
説明
burst-mode要素は、ネットワーク上でのパケットの転送速度を制御するために使用し、一時停止しないで転送するパケットの最大数を指定します。デフォルトではこの機能は無効です。一般的には、flow-control
が無効な場合、または半二重ネットワーク・リンクで負荷の大きな処理を実行する場合にのみ必要です。この設定は、packet-speaker
で送信されるパケットにのみ影響します。
要素
表H-5は、burst-mode
要素で定義可能なサブ要素について説明しています。
表H-5 burst-modeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
一時停止しないで連続で送信されるパケットの最大数を指定します。ゼロは制限がないことを示します。この値を比較的小さく設定すると、大量のパケットを送信する場合に強制的に抑制されます。そうすることにより、場合によっては衝突が減少し、受信トラフィックをより迅速に処理できます。デフォルト値は0です。 |
< |
必須 |
パケットの長いバースト間の遅延の最小値をミリ秒単位で指定します。この値を大きくすると、大量のパケットを送信する場合に強制的に抑制されます。そうすることにより、場合によっては衝突が減少し、受信トラフィックをより迅速に処理できます。デフォルト値は10です。 |
使用場所: security-config
表H-6は、callback-handler
要素で定義可能なサブ要素について説明しています。
表H-6 callback-handlerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
|
< |
オプション |
|
使用場所: access-controller
、address-provider
、callback-handler
、configurable-cache-factory-config
、service-guardian
のservice-failure-policy
説明
Javaクラスの名前を指定します。
使用場所: <coherence>
説明
通信パラメータやサービス・パラメータなどのクラスタ構成情報を記述します。
要素
表H-7は、cluster-config
要素で定義可能なサブ要素について説明しています。
表H-7 cluster-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
クラスタに参加できるホストを指定します。 |
|
<filters> |
オプション |
クラスタ・ノード間で転送されるデータに対するカスタム変換の実行に使用できるデータ変換フィルタを指定します。 |
必須 |
受信するクラスタ通信のディスパッチに使用する受信メッセージ・ハンドラの構成情報を指定します。 |
|
オプション |
クラスタ・メンバーの位置とロールの定義に有用な、詳細な識別情報を指定します。 |
|
必須 |
Point-to-Multipointネットワーク通信の受信に使用するマルチキャスト・リスナーの構成情報を指定します。 |
|
必須 |
送信するクラスタ通信のディスパッチに使用する送信メッセージ・ハンドラの構成情報を指定します。 |
|
必須 |
ネットワーク・データ転送の管理に使用するパケット・パブリッシャの構成情報を指定します。 |
|
必須 |
ネットワーク・データ転送に使用するパケット・スピーカーの構成情報を指定します。 |
|
<services> |
必須 |
使用可能なCoherenceサービスすべての宣言データを指定します。 |
必須 |
サービスのデッドロックの検出と解決に使用されるサービス・ガーディアンの構成情報を指定します。 |
|
必須 |
外部シャットダウン・リクエストを受信したときに実行するアクションを指定します。 |
|
必須 |
停止検出に使用するTCPリング・リスナーの構成情報を指定します。 |
|
必須 |
Point-to-Pointネットワーク通信の受信に使用するユニキャスト・リスナーの構成情報を指定します。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
ルート要素
説明
coherence
要素は、オペレーション・デプロイメント・ディスクリプタtangosol-coherence.xml
のルート要素です。
要素
表H-8は、coherence
要素で定義可能なサブ要素について説明しています。
表H-8 coherenceのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
必須 |
クラスタ構成情報を記述します。この要素では、ほとんどの通信およびサービスのパラメータを定義します。 |
|
必須 |
ロギング機能の構成情報を記述します。 |
|
必須 |
構成可能なキャッシュ・ファクトリの構成情報を記述します。これにより、キャッシュ・コンフィギュレーション設定のロード先、ロード元およびロード方法を制御します。 |
|
必須 |
Coherenceの管理フレームワークの構成情報を記述します。詳細は、第21章「JMXを使用したCoherenceの管理方法」を参照してください。 |
|
オプション |
Coherenceのセキュリティ・フレームワークの構成情報を記述します。 |
|
オプション |
エディションおよび操作モードの構成を記述します。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: coherence
要素
表H-9は、configurable-cache-factory-config
要素で定義可能なサブ要素について説明しています。
表H-9 configurable-cache-factory-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
キャッシュ・コンフィギュレーション・ファクトリを提供するJavaクラスの名前を指定します。デフォルト値は |
オプション |
<init-param> <param-type>java.lang.String</param-type> <param-value system-property="tangosol.coherence.cacheconfig"> coherence-cache-config.xml </param-value> </init-param> 事前構成されている値は |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: cluster-config
説明
データ変換フィルタはservices
で使用され、クラスタ・ノード間で転送されるデータに対するカスタム変換に適用できます。これは、Coherenceのネットワーク・トラフィックを圧縮または暗号化するインスタンスに使用できます。詳細は、<filter-class>
要素を参照してください。
実装
データ変換フィルタは、com.tangosol.util.WrapperStreamFactory
インタフェースの実装です。
注意: データ変換フィルタは、com.tangosol.util.Filter には関係がなく、キャッシュの問合せに使用するCoherence APIの一部です。 |
要素
表H-10は、filters
要素で定義可能なサブ要素について説明しています。
表H-10 filtersのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
フィルタの正規名を指定します。この名前はクラスタ内で一意です(例: |
< |
必須 |
フィルタ実装のクラス名を指定します。このクラスでは、パラメータがゼロのpublicなコンストラクタが必要であり、 |
オプション |
<init-param> <param-name>strategy</param-name> <param-value>gzip</param-value> </init-param> <init-param> <param-name>level</param-name> <param-value>default</param-value> </init-param> 標準的なフィルタのパラメータ値の詳細は、第8章「ネットワーク・フィルタ」を参照してください。 |
内容のオーバーライド属性id
およびxml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。これらの属性の詳細は、「要素の属性」を参照してください。
使用場所: packet-delivery
説明
flow-control要素には、パケット速度の調整およびリモートGCの検出に関連する構成情報を記述します。
リモートGCの検出
Coherenceでリモート一時停止検出を使用すると、(GCが長いなどが原因で)応答のないクラスタ・ノードを検出し、それに対して反応できます。ノードが一時停止としてマークされた場合、そのノードを送信先とするパケットは、ノードが応答を再開するまでは、通常より遅い速度で送信されます。リモートGCの検出を使用すると、ノードが応答できない間にノードがあふれないようにできます。
パケット速度の調整
Coherenceでフロー制御を使用すると、Point-to-Pointの転送統計に基づき、特定のクラスタ・ノードに転送されるパケット速度を動的に調整できます。
要素
表H-11は、flow-control
要素で定義可能なサブ要素について説明しています。
表H-11 flow-controlのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
フロー制御を有効にするかどうかを指定します。デフォルトはtrueです。 |
オプション |
応答のないクラスタ・ノードに再送信するパケットの数を定義します。このパケット数を超過すると、そのノードは一時停止していると見なされます。 |
|
オプション |
クラスタ・ノードに送信する未確認パケットの数を定義します。このパケット数を超過すると、そのノードを送信先とするパケットは遅延されます。 |
使用場所: authorized-hosts
説明
クラスタに参加できるノードのユニキャスト・アドレスの範囲を指定します。
要素
表H-12は、host-range
要素で定義可能なサブ要素について説明しています。
表H-12 host-rangeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
ホスト・アドレスの範囲の開始IPアドレスを指定します(例: 198.168.1.1)。 |
< |
必須 |
ホストの範囲の終了IPアドレスを指定します(例: 198.168.2.255)。 |
内容のオーバーライド属性id
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: cluster-config
説明
incoming-message-handler
は、UDPパケットを論理メッセージにアセンブルして、それを適切なCoherenceサービスにディスパッチして処理させます。
要素
表H-13は、incoming-message-handler
要素で定義可能なサブ要素について説明しています。
表H-13 incoming-message-handlerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
新しいクラスタ・メンバーのシステム時刻とクラスタ時刻との間の差異を測定する際に、ブロードキャスト・メッセージの送受信間の最大時刻差異を指定します。差異が小さいほど、クラスタ内で稼働する複数のシステム間でクラスタ時刻がより近いことが確実となります。ただし、クラスタに参加するプロセスは、指定された差異内でメッセージの交換が実行できるまで拡張されます。通常は、20ミリ秒程度の値で十分ですが、負荷の高いクラスタや複数のネットワーク・ホップでは、より大きな値が必要になる場合があります。デフォルト値は16です。 |
< |
必須 |
パケットの受信側で否定応答(パケット・リクエスト)を使用して、欠落パケットを認識したときに積極的に応答するかどうかを指定します。詳細と構成は、「notification-queueing」を参照してください。有効な値は、 |
< |
必須 |
受信メッセージ・ハンドラの実行スレッドの優先度を指定します。有効な値は1〜10です。デフォルト値は7です。 |
必須 |
Coherenceがバッファリングする受信パケットの数を指定します。この数を超過すると、受信パケットはブロックされます。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: init-params
説明
個別の初期化パラメータを定義します。
要素
表H-14は、init-param
要素で定義可能なサブ要素について説明しています。
表H-14 init-paramのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
クラスに渡されるパラメータの名前を指定します。 |
< |
オプション |
クラスに渡されるパラメータのデータ型を指定します。 |
< |
必須 |
パラメータで渡される値を指定します(例: |
内容のオーバーライド属性id
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: address-provider
、filters
、services
、configurable-cache-factory-config
、access-controller
およびcallback-handler
説明
一連の初期化パラメータを定義します。
要素
表H-15は、init-params
要素で定義可能なサブ要素について説明しています。
使用場所: coherence
表H-16は、license-config
要素で定義可能なサブ要素について説明しています。
表H-16 license-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
メンバーが使用する製品のエディションを指定します。これにより、同じクラスタ内で複数の製品のエディションが使用可能になります。メンバーごとに、使用するエディションを指定します。有効な値は、 |
< |
オプション |
製品を開発モードと本番モードのいずれで使用するかを指定します。有効な値は、 |
使用場所: coherence
要素
次の表は、logging-config要素で定義可能な要素について説明しています。
表H-17 logging-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
<destination> |
必須 |
ロギング・システムで使用する出力デバイスを指定します。有効な値は次のとおりです。
出力先として |
< |
必須 |
どのログ・メッセージをログ出力先に出力するかを指定します。有効な値は次のとおりです。
デフォルト値は |
< |
必須 |
ログ出力先に渡す前に、ロギング・レベルが指定されたメッセージをフォーマットする方法を指定します。message-format要素の値は、次の置換可能なパラメータを含む静的テキストです。
デフォルト値は次のとおりです。 {date} Oracle Coherence {version} <{level}> (thread={thread}, member={member}): {text} |
< |
必須 |
ログ出力デーモンがメッセージ・キューから処理する文字の最大数を指定します。この数を超過すると、キューに残っているメッセージがすべて破棄されます。合計文字数がこの最大数を超えたメッセージは、切り捨てられません。また、破棄されるすべてのメッセージはロギング・システムでまとめられて、破棄されたメッセージの数およびその合計サイズの詳細を記録した単一のログ・エントリが出力されます。キューが処理されると(空になると)後続のメッセージをログに記録できるようにログ出力がリセットされるため、ロギングの切捨ては一時的なものに限定されます。 この設定の目的は、ロギング自体で失敗の状態からのリカバリができない状況を回避することです。たとえば、タイミングが密接していると、ロギングにより実際のタイミングが変わる場合があり、それにより失敗が多く発生しロギングも増加して、悪循環に陥る可能性があります。任意の時点で実行されるロギングの制限となるものは、そのような悪循環の発生を防ぐ圧力弁です。システムの重要な部分への影響をさらに軽減するために、ロギングは優先度の低い専用のスレッドで実行されます。 有効な値は、正の整数またはゼロです。ゼロは制限がないことを示します。 デフォルト値は4096です。事前構成されている値は |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: coherence
要素
表H-18は、management-config
要素で定義可能なサブ要素について説明しています。
表H-18 management-configのサブ要素
要素 | オプション/必須 | 説明 |
---|---|---|
< |
必須 |
Coherenceの管理フレームワークで公開される、MBeanの登録に使用されるJMXドメイン名を指定します。詳細は、第21章「JMXを使用したCoherenceの管理方法」を参照してください。 |
< |
必須 |
クラスタ・ノードのJVMに
デフォルト値は |
< |
必須 |
このクラスタ・ノードで、管理オブジェクトをリモートのMBeanServerに公開するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。事前構成されている値は |
refresh-policy |
オプション |
リモート管理情報のリフレッシュに使用されるメソッドを指定します。 有効な値は、 デフォルト値は 事前構成されているオーバーライド値は |
refresh-expiry |
オプション |
管理ノードでリモートのMBean情報が無効化されるまでの時間間隔(ミリ秒単位)を指定します。 有効な値は、時間間隔を表す文字列です。 デフォルト値は 事前構成されているオーバーライド値は |
refresh-timeout |
オプション |
MBean情報のリフレッシュ時に管理ノードがリモート・ノードからのレスポンスを待つ期間を指定します。この値はrefresh-expiryの間隔より小さくする必要があります。 有効な値は、時間間隔を表す文字列です。 デフォルト値は 事前構成されているオーバーライド値は |
< |
必須 |
このクラスタ・ノードで公開された管理オブジェクトに、実行時属性の変更操作を許可するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値は |
< |
必須 |
リモート管理に使用する起動サービスの名前を指定します。この要素は、allow-remote-managementがtrueに設定されている場合にのみ使用されます。 |
<mbeans> |
オプション |
ノードがクラスタに参加するときに登録されるMBeanのリストを記述します。「mbeans」を参照してください。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。
使用場所: cluster-config
member-identity
要素には、クラスタ・メンバーの位置とロールの定義に有用な、詳細な識別情報を記述します。
要素
表H-19は、member-identity要素で定義可能なサブ要素について説明しています。
表H-19 member-identityのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
|
< |
オプション |
site-name要素には、メンバーがホストされる地理上のサイトの名前を記述します。WANによるクラスタ化では、メンバーが配置されるデータセンターをこの値で特定します。またこの値は、高度なルーティング、ロード・バランシングおよび障害時リカバリ計画(別の地理上のサイトにあるデータの明示的なバックアップ)の基盤として使用できます。この名前は、管理情報(例、JMX)の表示およびログ・エントリの解釈にも有用です。この要素に値を指定するかどうかはオプションです。複数の地理上のサイトにわたるデプロイメントでは、site-nameの値を指定する必要があります。事前構成されている値は |
< |
オプション |
rack-name要素には、メンバーがホストされる地理上のサイト内にある場所の名前を記述します。この値は多くの場合、ケージ、ラックまたはブレードフレームの識別子であり、高度なルーティング、ロード・バランシングおよび障害時リカバリ計画(別のブレードフレームにあるデータの明示的なバックアップ)の基盤として使用できます。この名前は、管理情報(例、JMX)の表示およびログ・エントリの解釈にも有用です。この要素に値を指定するかどうかはオプションです。大規模なデプロイメントでは、rack-nameの値を常に指定する必要があります。事前構成されている値は |
< |
オプション |
machine-name要素には、メンバーがホストされる物理サーバーの名前を記述します。多くの場合、サーバーの識別子自体と同じ名前を指定します(たとえば、 |
< |
オプション |
|
< |
オプション |
|
< |
オプション |
|
< |
オプション |
|
使用場所: cluster-config
説明
マルチキャスト・リスナーの構成情報を指定します。この要素は、クラスタがクラスタ全体およびPoint-to-Multipoint通信に使用するアドレス(<address>
サブ要素を参照)およびポート(<port>
サブ要素を参照)を指定するために使用します。クラスタ内のノードはすべて、同じマルチキャスト・アドレスおよびポートを使用する必要があります。同じネットワークの別のクラスタは、別のマルチキャスト・アドレスを使用する必要があります。
マルチキャストフリーのクラスタ化
デフォルトでは、クラスタの形成時に他のノードを検出するためにマルチキャスト・プロトコルが使用されます。マルチキャスト・ネットワーキングが適さない場合、または環境内で使用できない場合には、well-known-addresses
機能を使用するとマルチキャスト・トラフィックを使用する必要がなくなります。マルチキャストを使用してクラスタを設定するのが困難な場合は、第15章「マルチキャスト接続テストの実行」を参照してください。
要素
表H-20は、multicast-listener
要素で定義可能なサブ要素について説明しています。
表H-20 multicast-listenerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
ソケットがリスニングまたは公開するマルチキャストIPアドレスを指定します。有効な値は224.0.0.0〜239.255.255.255です。デフォルト値は、リリースおよびビルド・レベルによって異なり、一般的に |
< |
必須 |
ソケットがリスニングまたは公開するポートを指定します。有効な値は1〜65535です。デフォルト値は、リリースおよびビルド・レベルによって異なり、一般的に |
< |
必須 |
マルチキャストの有効時間設定を指定します。これにより、パケットが横断するホップの最大数を決定します。ホップは、あるネットワーク・セグメントから別のネットワーク・セグメントへの、ルーターを使用した横断として測定されます。有効な値は0〜255です。 デフォルト値は4です。事前構成されている値は |
必須 |
オペレーティング・システムがバッファリングを要求される受信パケットの数を指定します。 |
|
< |
必須 |
マルチキャスト・リスナーの実行スレッドの優先度を指定します。有効な値は1〜10です。デフォルト値は8です。 |
< |
必須 |
新しいメンバーがクラスタの形跡を見つけないで待機する時間を指定します(ミリ秒単位)。この時間を超過すると、自身のクラスタが開始され、上位クラスタ・メンバーに自身が昇格されます。有効な値は1〜1000000です。 注意: 本番で使用する場合、推奨値は30000です。デフォルト値は6000です。 |
< |
必須 |
パケットをユニキャストとマルチキャストのいずれで送信するかを決定する際に使用するしきい値(%)を指定します。この割合は1〜100%で指定します。n個のノードで構成されるクラスタにおいて、特定のノードが他の送信先ノードのセット(送信者自身を除く)のサイズをdとすると(dは0〜n-1)、次の両方とも当てはまる場合にのみ、パケットはマルチキャストで送信されます。
注意: この要素は |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: packet-publisher
説明
notification-queueing
要素は、他のクラスタ・ノードに送信される通知パケットのタイミングを指定するために使用します。通知パケットは、確認が要求されているパケットを受信したことの肯定応答に使用されます。
肯定応答のバッチ化
確認が要求されている各受信パケットに対して個別にACKを送信するかわりに、Coherenceでは対応する送信者に対する一連の肯定応答を単一のACKにバッチ化します。<ack-delay-milliseconds>
は、肯定応答の最大遅延時間を指定します。この時間を超過すると、ACK肯定応答が送信されます。肯定応答をバッチ化することにより、ネットワーク帯域幅を多数の小さなACKパケットで消耗することがなくなります。
否定応答
これが有効な場合、クラスタ・ノードはパケット順序を使用して早期のパケット消失の検出を実行します(<incoming-message-handler
>のサブ要素<use-nack-packets>
を参照)。これにより、Coherenceは消失した可能性のあるパケットを特定し、スケジュールされているパケットの前に再送信できます(<packet-delivery
>のサブ要素<resend-milliseconds>
を参照)。
要素
次の表は、notification-queuing要素で定義可能な要素について説明しています。
表H-21 notification-queuingのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
パケット・パブリッシャの最大遅延時間を指定します(ミリ秒単位)。この時間を超過すると、ACKパケットが送信されます。ACKパケットは、バッチ化された肯定応答数がACKパケットを満たした場合に、早期に送信されることがあります。この値はリモート・ノードの |
< |
必須 |
パケット・パブリッシャの遅延時間を指定します(ミリ秒単位)。この時間を超過すると、NACKパケットが送信されます。デフォルト値は1です。 |
使用場所: acceptor-config
、initiator-config
説明
outgoing-message-handler
は、クライアントからクラスタへの接続の切断を検出するために使用される構成情報を指定します。コネクションレスのプロトコル(例、JMS)を使用する接続イニシエータおよび接続アクセプタでは、この情報は、切断された接続に割り当てられていたリソースを前もって検出および解放するために必要です。この情報は、接続指向のイニシエータおよびアクセプタでも、接続の切断を検出するための追加メカニズムとして使用できます。
要素
表H-22は、outgoing-message-handler
要素で定義可能なサブ要素について説明しています。
表H-22 outgoing-message-handlerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
pingリクエストの間隔を指定します。pingリクエストは、接続の整合性を確保するために使用します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。値0はpingリクエストがないことを意味します。デフォルト値は0です。 |
< |
オプション |
pingリクエストへのレスポンスに対する最大待機時間を指定します。この時間を超過すると、基礎となる接続が使用不能と宣言されます。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は、request-timeout要素の値です。 |
< |
オプション |
レスポンス・メッセージに対する最大待機時間を指定します。この時間を超過すると、基礎となる接続が使用不能と宣言されます。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は無限のタイムアウトです。 |
使用場所: flow-control
説明
クラスタ・ノードに送信する未確認パケットの数を定義します。このパケット数を超過すると、そのノードを送信先とするパケットは遅延されます。これにより、送信側が原因で受信側のネットワーク・バッファがオーバーフローすることがなくなります。
自動チューニング
この値は、maximum-packets
要素を使用して数値を明示的に指定するか、またはmaximum-packets
要素とminimum-packets
要素の両方を使用して範囲として指定する必要があります。範囲を指定する場合、この設定はネットワーク統計に基づいて動的に調整されます。
要素
表H-23は、outstanding-packets要素で定義可能なサブ要素について説明しています。
表H-23 outstanding-packetsのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
クラスタ・ノードに送信する未確認パケットの最大数です。このパケット数を超過すると、そのノードを送信先とするパケットは遅延されます。この値を256未満に設定しないことをお薦めします。デフォルト値は4096です。 |
< |
オプション |
クラスタ・ノードに送信する未確認パケット数の範囲の下限です。このパケット数を超過すると、そのノードを送信先とするパケットは遅延されます。この値を64未満に設定しないことをお薦めします。デフォルト値は64です。 |
使用場所: unicast-listener
、multicast-listener
、packet-publisher
説明
データグラム・ソケットに使用するオペレーティング・システムのバッファのサイズを指定します。
パフォーマンスへの影響
インバウンド・バッファを大きく指定すると、Coherenceネットワーク層が、Javaガベージ・コレクタを原因とするJVMの一時停止から保護されます。JVMの一時停止中は、Coherenceは任意のインバウンド・ソケットからパケットをデキューできません。一時停止時間がパケット・バッファのオーバーフローを引き起こすほど長いと、発信元ノードがパケット消失を検出してパケットを再送信する必要があるため、パケットの受信が遅延します。
単なるヒント
オペレーティング・システムは指定された値をヒントとして扱うのみで、その値を割り当てる義務はありません。小さい領域しか割り当てられない場合、要求されたCoherenceは警告を発行して、制限されたバッファで操作を続行することになり、パフォーマンスが低下することがあります。大きなバッファを割り当てられるようにオペレーティング・システムを構成する方法の詳細は、第19章「パフォーマンス・チューニング」を参照してください。
要素
表H-24は、packet-buffer
要素で定義可能なサブ要素について説明しています。
表H-24 packet-bufferのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
<maximum-packets> |
必須 |
unicast-listener、multicast-listenerおよびpacket-publisherの場合: データグラム・ソケット自身がバッファに求められるサイズのpacket-sizeのパケット数を指定します。 |
使用場所: packet-delivery
説明
packet-bundling
要素には、ネットワーク切替えインフラストラクチャにかかる負荷を軽減するために、複数の小さなパケットを1つの大きなパケットにバンドルする操作に関連する構成情報を記述します。
デフォルトの構成
デフォルトのpacket-bundling
は、体感できる遅延を加えることなくバンドルを実行できる、アグレッシブさが最小の設定です。よりアグレッシブなバンドルの利点は、ネットワーク・インフラストラクチャとアプリケーション・オブジェクトの一般的なデータ・サイズおよびアクセス・パターンにより異なります。
要素
表H-25は、packet-bundling
要素で定義可能なサブ要素について説明しています。
表H-25 packet-bundlingのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
追加のパケットがバンドルされるまで待機する間のパケットの最大遅延時間。この値を0に設定すると、待機のないアルゴリズムとなり、即座にアクセスできるパケットのみがバンドルされます。0より大きい値を設定すると、追加のパケットが使用可能になるまで待機する間に、多少の送信遅延が発生します。スループットに有害な影響が出ないように、通常この値は250マイクロ秒未満に設定します。単位を指定しない場合は、ナノ秒と見なされます。 デフォルト値は1us(マイクロ秒)です。 |
< |
オプション |
パケット遅延アルゴリズムのアグレッシブさを指定します。maximum-deferral-time要素では遅延時間の上限を定義しますが、aggression-factorは平均の遅延時間に影響します。アグレッシブさの値が高いほど、パブリッシャが追加のパケットを待つ時間が長くなります。この要素は実数で表します。多くの場合は待機時間を最小に抑えながらパケットの使用率を上げることができるように、0.0〜1.0の値を使用します。 デフォルト値は0です。 |
使用場所: incoming-message-handler
、packet-publisher
説明
CoherenceがUDPパケットの送受信に使用するために内部的に維持するパケットの数を指定します。packet-buffer
と異なり、これらのバッファはオペレーティング・システムではなくCoherenceで管理され、JVMのヒープに割り当てられます。
パフォーマンスへの影響
パケット・プールは、Coherenceネットワーク・サービス間で再利用可能なバッファとして使用されます。パケット送信の場合、これによりpacket-speaker
のキューに配置できるパケットの最大数を定義します。この数を超過すると、packet-publisher
がブロックされます。パケット受信の場合、これによりincoming-message-handler
のキューに配置できるパケットの数を定義します。この数を超過すると、unicast-listener
およびmulticast-listener
がブロックされます。
要素
表H-26は、packet-pool
要素で定義可能なサブ要素について説明しています。
表H-26 packet-poolのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
公開および受信を担当するサービスで使用する再利用可能なパケットの最大数。プールは、最初は小さく、必要に応じて、指定された上限まで大きくなります。送受信用のデフォルト値は2048です。 |
使用場所: packet-publisher
説明
パケット配信に関連するタイミングおよび転送レートのパラメータを指定します。
停止検出
サブ要素<timeout-milliseconds>
および<heartbeat-milliseconds>
は、他のクラスタ・ノードの停止検出に使用されます。
要素
表H-27は、packet-delivery
要素で定義可能なサブ要素について説明しています。
表H-27 packet-deliveryのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
確認が要求されるパケットの場合、対応するACKパケットを待つ最小時間をミリ秒単位で指定します。この時間を超過すると、パケットが再送信されます。デフォルト値は200です。 |
< |
必須 |
確認が要求されるパケットの場合、最大時間をミリ秒単位で指定します。この時間を超過すると、パケットが再送信されます。このタイムアウトが経過した後、Coherenceでは受信側が停止していると見なすかどうかが決定されます。これを決定するには、他のノードがその受信者と通信できているかどうかなど、他のデータも考慮されます。デフォルト値は60000です。注意: 本番で使用する場合、60000および予想される最大のGCの全所要時間の2倍より大きな値を指定することをお薦めします。 |
< |
必須 |
ハートビートの間隔を指定します。各メンバーはユニキャストのハートビートを発行し、最も上位のメンバーは、ブロードキャスト・メッセージとなるクラスタ・ハートビートを発行します。ハートビートは、高速な停止検出の一環として |
オプション |
ノード当たりのパケット速度の調整およびリモートのGCの検出を構成します。 |
|
オプション |
Coherenceでパケット使用率の最大化を試行するアグレッシブさを構成します。 |
使用場所: cluster-config
説明
ネットワーク・データ転送を管理するパケット・パブリッシャの構成情報を指定します。
信頼性のあるパケット配信
パケット・パブリッシャは、送信したパケットが送信先のクラスタ・ノードに確実に届くように管理します。パブリッシャは肯定応答を待つ一連のパケットを保持し、ACKがpacket-delivery
再送信タイムアウトまでに届かない場合、そのパケットは再送信されます(<packet-delivery>
サブ要素を参照)。受信側ノードはACKを遅延して、一連のACKを1つのレスポンスにバッチ化します(<notification-queuing>
サブ要素を参照)。
速度調整
パブリッシャがパケットを送受信する速度は、traffic-jam
およびflow-control
の設定を使用して制御できます。速度調整は、低速のネットワークや小さなpacket-buffer
に対処する場合に必要です。
要素
表H-28は、packet-publisher
要素で定義可能なサブ要素について説明しています。
表H-28 packet-publisherのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
<enabled> |
必須 |
TCMPクラスタ化を有効にするかどうかを指定します。Coherence ExtendベースとCoherence TCMPベース両方のクラスタ化をサポートするCoherenceエディションの場合、この機能を使用してTCMPを無効化し、ノードがExtendプロトコルのみを使用して接続するようにすることができます。デフォルト値は |
必須 |
使用するUDPパケットのサイズを指定します。 |
|
必須 |
信頼性のあるパケット配信に関連するタイミングのパラメータを指定します。 |
|
必須 |
通知キューに関連する構成情報を記述します。 |
|
必須 |
パブリッシャが一時停止しないで送信できるパケットの最大数を指定します。 |
|
必須 |
パブリッシャのキューに配置できるパケットの最大数を指定します。この数を超過すると、クライアント・スレッドによってブロックされます。 |
|
必須 |
オペレーティング・システムがバッファリングを要求される送信パケットの数を指定します。 |
|
必須 |
Coherenceがバッファリングする送信パケットの数を指定します。この数を超過すると、送信パケットはブロックされます。 |
|
< |
必須 |
パケット・パブリッシャの実行スレッドの優先度を指定します。有効な値は1〜10です。デフォルト値は6です。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。
使用場所: packet-publisher
説明
packet-size要素は、UDPパケットの最大サイズおよび最適なサイズを指定します(サブ要素<maximum-length>
および<preferred-length>
を参照)。クラスタ・ノードは、いずれも同一の最大パケット・サイズを使用する必要があります。ネットワークを最適に使用するには、この値をネットワークMTUより32バイト小さな値に指定する必要があります。
注意: Microsoft Windowsで1024バイトを超えるUDPパケット・サイズを指定する場合、転送速度が最適になるようにレジストリ設定を調整する必要があります。詳細は、「データグラム・サイズ(Microsoft Windows)」を参照してください。 |
要素
表H-29は、packet-size
要素で定義可能なサブ要素について説明しています。
表H-29 packet-sizeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
ユニキャスト・ソケットおよびマルチキャスト・ソケットで送受信されるUDPパケットの最大サイズをバイト単位で指定します。これは512以上の値を指定する必要があります。100MBや1GBのイーサネットでの推奨値は1468です。この値は、すべてのクラスタ・ノードで同一にする必要があります。 注意: 一部のネットワーク機器では、1472バイト(IPv4)または1468バイト(IPv6)を超えるパケットを処理できない場合があります。負荷が大きい場合は特にそうです。ネットワークでこのような状況が発生した場合、それぞれ1472または1468に設定する必要があります。推奨値は、ネットワークMTU設定より32バイト小さな値です。デフォルト値は1468です。 |
< |
必須 |
ユニキャスト・ソケットおよびマルチキャスト・ソケットで送受信されるUDPパケットの最適サイズをバイト単位で指定します。これは512以上の値を指定する必要があり、maximum-lengthより大きな値を指定してはいけません。この値はmaximum-lengthと同じ値に設定することをお薦めします。デフォルト値は1468です。 |
使用場所: cluster-config
説明
ネットワーク・データ転送に使用するパケット・スピーカーの構成情報を指定します。
オフロード送信
パケット・スピーカーは、ネットワーク上でのパケットの送信を担当します。スピーカーは、ブロックされる可能性のあるネットワーク送信処理をpacket-publisher
で検出する際に使用されます。これにより、パケット・パブリッシャはI/Oのブロックを回避し、送信パケットの準備を続行できます。パブリッシャは、パケットの負荷の変化に伴ってスピーカーを使用するかどうかを動的に選択します。
要素
表H-30は、packet-speaker
要素で定義可能なサブ要素について説明しています。
表H-30 packet-speakerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
スピーカーの起動に必要なパケットの負荷を指定します。 |
|
< |
必須 |
パケット・スピーカーの実行スレッドの優先度を指定します。有効な値は1〜10です。デフォルト値は8です。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: flow-control
説明
Coherenceでリモート一時停止検出を使用すると、(GCが長いなどが原因で)応答のないクラスタ・ノードを検出し、それに対して反応できます。ノードが一時停止としてマークされた場合、そのノードを送信先とするパケットは、ノードが応答を再開するまでは、通常より遅い速度で送信されます。リモートGCの検出を使用すると、ノードが応答できない間にノードがあふれないようにできます。
要素
表H-31は、pause-detection
要素で定義可能なサブ要素について説明しています。
表H-31 pause-detectionのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
応答のないクラスタ・ノードに再送信するパケットの最大数です。このパケット数を超過すると、そのノードは一時停止していると見なされます。この値を0に指定すると、一時停止検出が無効になります。デフォルト値は16です。 |
使用場所: coherence
要素
表H-32は、security-config
要素で定義可能なサブ要素について説明しています。
表H-32 security-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
セキュリティ機能が有効化されているかどうかを指定します。 |
< |
必須 |
コール元の認証に使用するJAAS LoginModuleの名前を指定します。この名前は、JAASで使用されるコンフィギュレーション・ファイルのモジュールと一致している必要があります( |
必須 |
|
|
オプション |
|
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。
使用場所: cluster-config
説明
サービスのデッドロックを検出して解決を試みるサービス・ガーディアンの構成を指定します。
要素
表H-33は、service-guardian
要素で定義可能なサブ要素について説明しています。
表H-33 service-guardianのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
<timeout-milliseconds> |
必須 |
サービスがデッドロックされたり応答しなくなったりするのを回避するために使用されるタイムアウト値。 デフォルト値は 事前定義されているオーバーライド値は |
<service-failure-policy> |
必須 |
動作が異常なサービスをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。 有効な値は次のとおりです。
デフォルト値は |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。
使用場所: cluster-config
説明
Coherenceサービスの構成を指定します。
サービス・コンポーネント
構成可能なサービスの種類は、次のとおりです。
ReplicatedCache
: サービスを実行する全クラスタ・ノードの全キャッシュ・エントリのコピーを保持するキャッシュ・サービス。
ReplicatedCache.Optimistic
: 最適なロックを使用するReplicatedCache
のバージョン。
DistributedCache
: サービスを実行する複数のクラスタ・ノードにわたって、キャッシュ・エントリを均一にパーティション化するキャッシュ・サービス。
SimpleCache
: 並行処理制御なしのReplicatedCache
のバージョン。
LocalCache
: すべてのキャッシュ・エントリが1つのクラスタ・ノードに存在するキャッシュのキャッシュ・サービス。
InvocationService
: リモート・クラスタ・ノードでのカスタム操作の実行に使用されるサービス。
要素
表H-34は、services
要素で定義可能なサブ要素について説明しています。
表H-34 servicesのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
サービスの正規名を指定します。これにより、キャッシュ・コンフィギュレーションのキャッシング・スキームの |
< |
必須 |
サービスの完全修飾クラス名、またはベースのサービス・コンポーネントに対する再配置可能なコンポーネントの相対名を指定します。有効な値は次のとおりです。
|
< |
オプション |
このサービスで使用する <use-filters> <filter-name>gzip</filter-name> </use-filters> この場合、ネットワーク・メッセージに対して |
オプション |
各 |
内容のオーバーライド属性xml-override
およびid
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。
使用場所: cluster-config
説明
外部シャットダウン・リクエストを受信したときにクラスタ・ノードで実行するアクションを指定します。外部シャットダウンには、UNIXのkillコマンドやWindowsおよびUNIXのCtrl-C
などがあります。
要素
表H-35は、shutdown-listener
要素で定義可能なサブ要素について説明しています。
表H-35 shutdown-listenerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
外部JVMシャットダウンの際に実行するアクションの種類を指定します。有効な値は次のとおりです。
注意: 本番で使用する場合、外部シャットダウンに対する動作が目的どおりであることがテストで検証されている場合を除き、この値をnoneに設定することをお薦めします。デフォルト値はforceです。事前構成されている値は |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。
使用場所: well-known-addresses
、tcp-initiator
要素
表H-36は、socket-address
要素で定義可能なサブ要素について説明しています。
表H-36 socket-addressのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
ソケットがリスニングまたは公開するIPアドレスを指定します。 注意: localhostをループバック・アドレスとして定義しているシステムではlocalhostの設定が機能しない場合があります。その場合は、マシンの名前または特定のIPアドレスを指定します。 |
< |
必須 |
ソケットがリスニングまたは公開するポートを指定します。有効な値は1〜65535です。 |
使用場所: cluster-config
説明
TCPリングを使用すると、クラスタ内の別のノードの停止を迅速に検出できます。これを有効にすると、そのクラスタ・ノードに、クラスタ全体に及ぶTCP接続のリングが1つ形成されます。クラスタ・ノードは、TCP接続を使用して1つのハートビート間隔内で別のノードの停止を検出できます(デフォルト値は1秒です。packet-delivery
の<heartbeat-milliseconds>
サブ要素を参照)。これを無効にすると、別のノードがUDPパケットへの応答を停止したことを非常に長い間隔で検出する方法に頼る必要があります(packet-delivery
の<timeout-milliseconds>
サブ要素を参照)。停止が検出されると、他のすべてのクラスタ・ノードに送信されます。
要素
表H-37は、tcp-ring-listener
要素で定義可能なサブ要素について説明しています。
表H-37 tcp-ring-listenerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
<enabled> |
必須 |
ノードの障害を迅速に検出するためにTCPリング・リスナーを有効にするかどうかを指定します。有効な値は、 |
< |
必須 |
許容されるTCPリング・リスナー例外の最大数を指定します。この数を超過すると、特定のメンバーが実際に停止したと見なされ、クラスタから削除されます。この値は、 |
< |
必須 |
TCPリング・リスナーの実行スレッドの優先度を指定します。有効な値は1〜10です。デフォルト値は6です。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: packet-publisher
説明
traffic-jam
要素は、クライアント・スレッドでパケット・パブリッシャがパケットをエンキューしてネットワークに転送する速度を制御するために使用します。この制限を超えると、未処理のパケット数が指定された制限を下回るまで、任意のクライアント・スレッドは強制的に一時停止されます。パブリッシャのパケット転送速度を制限するには、flow-control
要素およびburst-mode
要素を参照してください。
チューニング
長すぎる制限または長すぎる一時停止を指定すると、パブリッシャはすべての保留パケットを送信して、送信すべきパケットがなくなる場合があります。理想的な値は、パブリッシャの実行する処理がなくならず、かつキューが制御できないほど大きくならないような値です。そのため、一時停止は非常に短く(10ミリ秒以下)、パケット数の制限は高く(5000超)保持することをお薦めします。Coherence 3.2以降は、この条件が検出されると警告が定期的にログに記録されます。
トラフィック・ジャムとフロー制御
flow-control
が有効な場合、traffic-jam
はPoint-to-Pointモードで動作し、受信側に大量の未処理のパケットがある場合にのみ送信がブロックされます。traffic-jam/maximum-packets
の値はこの値より大きく設定することをお薦めします(outstanding-packets
の<maximum-packets>
サブ要素を参照)。flow-control
が無効な場合、traffic-jam
では未処理のパケットがすべて考慮されます。
要素
表H-38は、traffic-jam
要素で定義可能なサブ要素について説明しています。
表H-38 traffic-jamのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
パブリッシャで容認される保留パケットの最大数を指定します。この数を超過すると、パブリッシャが詰まり、クライアント・リクエスト(ローカルにあるシステム以外のスレッド)の速度を落とす必要があると判断されます。ゼロは制限がないことを示します。このプロパティで再送信キューのサイズを制限することにより、予期しないメモリー不足状態のほとんどは発生しなくなります。デフォルト値は8192です。 |
< |
必須 |
パブリッシャが詰まったときに、メッセージの送信を試みるクライアント・スレッドをパブリッシャが一時停止する時間(ミリ秒)です。パブリッシャの詰まりが解消されるまでメッセージは送信されず、このプロパティで指定された期間中はスレッドの休止が繰り返されます。デフォルト値は10です。 |
使用場所: cluster-config
説明
ユニキャスト・リスナーの構成情報を指定します。この要素は、Point-to-Pointのクラスタ通信をリスニングするためにクラスタ・ノードでバインドするアドレスおよびポートを指定するために使用します。
アドレスの自動設定
デフォルトでは、Coherenceはjava.net.InetAddress.getLocalHost()
コールを使用して、バインドするIPアドレスの取得を試行します。複数のIPまたはNICを使用するマシンでは、アドレスを明示的に指定することもできます(<address>
サブ要素を参照)。また、指定したポートがすでに使用されている場合には、デフォルトで、バインドが成功するまでポート番号が自動的に増分されます(サブ要素<port>
および<auto>
を参照)。
マルチキャストフリーのクラスタ化
デフォルトでは、クラスタの形成時に他のノードを検出するためにマルチキャスト・プロトコルが使用されます。マルチキャスト・ネットワーキングが適さない場合、または環境内で使用できない場合には、well-known-addresses
機能を使用するとマルチキャスト・トラフィックを使用する必要がなくなります。マルチキャストを使用してクラスタを設定するのが困難な場合は、第15章「マルチキャスト接続テストの実行」を参照してください。
要素
表H-39は、unicast-listener
要素で定義可能なサブ要素について説明しています。
表H-39 unicast-listenerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
マルチキャスト・ブロードキャストのかわりにクラスタ検出プロトコルで使用されるwell-known-addresses(WKA)のリストを記述します。 |
|
< |
必須 |
各サーバー・マシンを一意に識別する識別子を指定します。指定しない場合、デフォルト値はデフォルトのネットワーク・インタフェースのアドレスから生成されます。各メンバーを別のマシンで稼働するメンバーによって確実にバックアップすることにより、クラスタ内の各マシンのマシンIDを、クラスタ・サービスのフェイルオーバーの計画に使用できます。 |
< |
必須 |
ソケットがリスニングまたは公開するIPアドレスを指定します。注意: localhostをループバック・アドレスとして定義しているシステムではlocalhostの設定が機能しない場合があります。その場合は、マシンの名前または特定のIPアドレスを指定します。デフォルト値は |
< |
必須 |
ソケットがリスニングまたは公開するポートを指定します。有効な値は1〜65535です。デフォルト値は8088です。事前構成されている値は |
< |
必須 |
指定したポートがすでに使用されているためにバインドできない場合に、ユニキャスト・ポートを自動的に増分するかどうかを指定します。有効な値は、 |
必須 |
オペレーティング・システムがバッファリングを要求される受信パケットの数を指定します。 |
|
< |
必須 |
ユニキャスト・リスナーの実行スレッドの優先度を指定します。有効な値は1〜10です。デフォルト値は |
< |
オプション |
メンバーが使用できないことを示すソケット例外をユニキャスト・リスナーで無視するかどうかを指定します。Coherence 3.2以降では非推奨になっています。 |
< |
オプション |
許容されるユニキャスト・リスナー例外の最大数を指定します。この数を超過すると、特定のメンバーが実際に停止したと見なされ、クラスタから削除されます。Coherence 3.2以降では非推奨になっています。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: packet-speaker
説明
スピーカー・デーモンの起動に必要な送信パケットの最小量を指定します。
パフォーマンスへの影響
パケットの負荷が比較的低い場合、スピーカーの操作をパブリッシャのスレッドで実行すると効率が向上することがあります。パケットの負荷が高い場合、スピーカーを使用すると、スピーカーによってネットワーク上でパケットを送信しながらパブリッシャはパケットの準備を続けることができます。
要素
表H-40は、volume-threshold
要素で定義可能なサブ要素について説明しています。
表H-40 volume-thresholdのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
スピーカー・デーモンを起動するために送信の準備を整える必要のあるパケットの最小数を指定します。値を0に指定するとスピーカーが常に強制的に使用され、高い値を指定すると使用されなくなります。値を指定しないと、 |
使用場所: unicast-listener
注意: これは、セキュリティ関連の機能ではなく、クラスタに参加できるアドレスを制限するものではありません。クラスタ・メンバーシップの制限の詳細は、authorized-hosts要素を参照してください。Caching Editionでは、well-known-addresses(WKA)機能の使用はサポートされていません。マルチキャストを使用してクラスタを設定するのが困難な場合は、第15章「マルチキャスト接続テストの実行」を参照してください。 |
説明
デフォルトでは、クラスタの形成時に他のノードを検出するためにマルチキャスト・プロトコルが使用されます。マルチキャスト・ネットワーキングが適さない場合、または環境内で使用できない場合には、well-known-addresses機能を使用するとマルチキャスト・トラフィックを使用する必要がなくなります。使用中は、クラスタの開始が許可され、クラスタの存続期間を通して使用できる見込みのあるノードの比較的小さなリストでクラスタが構成されます。すべてのWKAノードが任意の時点で同時にアクティブである必要はありません。このリストは、マルチキャストを使用しないでクラスタの経路を見つけるために他のすべてのノードで使用され、他のノードが参加できるように少なくとも1つの既知のノードは稼働している必要があります。
例
例H-2は、デフォルトのポートがある2つのwell-known-addressesの構成を示しています。
例H-2 2つのwell-known-addressesの構成
<well-known-addresses> <socket-address id="1"> <address>192.168.0.100</address> <port>8088</port> </socket-address> <socket-address id="2"> <address>192.168.0.101</address> <port>8088</port> </socket-address> </well-known-addresses>
要素
表H-41は、well-known-addresses
要素で定義可能なサブ要素について説明しています。
表H-41 well-known-addressesのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
well-known-addresses(WKA)を提供する |
|
オプション |
マルチキャスト・ブロードキャストのかわりにクラスタ検出プロトコルで使用されるWKAのリストを指定します。1つ以上のWKAを指定した場合、メンバーがクラスタに参加するようにするには、そのメンバーがWKAになるか、または少なくとも1つのWKAメンバーが稼働している必要があります。また、すべてのクラスタ通信はユニキャストを使用して実行されます。空の場合または指定していない場合は、マルチキャスト通信が使用されます。事前構成されている値は、 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
要素の内容をオーバーライドするには、オプションのid
属性およびxml-override
属性を使用できます。これらの属性は、次の要素の中に、独立して記述することもまとめて記述することもできます。
表H-42は、id
またはxml-override
、あるいはその両方を使用できる要素を示しています。
表H-43は、id
属性およびxml-override
属性の機能について説明しています。
表H-43 id属性およびxml-override属性の説明
属性 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドできるようにします。この属性の有効な値は、オーバーライド・ドキュメントのリソース名です。このリソース名は、 この属性で参照されるオーバーライドXMLドキュメントは、存在しなくてもかまいません。ただし、存在する場合は、そのルート要素の名前が、オーバーライドする要素の名前と同じである必要があります。名前の同じ要素が複数ある場合(例、< |
|
オプション |
名前の同じ要素が複数ある場合(例、< |