この章では、Oracle Coherenceで使用される操作設定および実行時の設定を制御する要素について説明します。これらの設定を使用して、Coherenceのクラスタ化、通信およびデータ管理サービスを作成、構成および維持します。また、これらの要素が含まれるデプロイメント・ディスクリプタ・ファイルについても説明します。
クラスタ化、通信およびデータ管理サービスを作成および構成するために操作設定および実行時の設定を制御する要素は、次の2つのデプロイメント・ディスクリプタのいずれかで指定できます。
tangosol-coherence.xml
ディスクリプタ。このディスクリプタでは、クラスタ化、通信およびデータ管理サービスを制御する操作要素および実行時要素を指定します。オプションのtangosol-coherence-override.xml
オーバーライド・ファイル。このファイルでは、調整するオペレーション・ディスクリプタのサブセットのみを指定します。詳細は、「オペレーション・オーバーライド・ファイル(tangosol-coherence-override.xml)」を参照してください。
キャッシュの構成の詳細は、付録B「キャッシュ構成の要素」を参照してください。
Coherenceをデプロイする場合に重要なことは、tangosol-coherence.xml
ディスクリプタが存在し、それがアプリケーション・クラスパスに位置するようにすることです(他のリソースと同様に、Coherenceはクラスパスで最初に見つかったものを使用します)。(オラクル社のソフトウェア出荷時の)デフォルトでは、tangosol-coherence.xml
がcoherence.jar
にパッケージされています。
Coherenceオペレーション構成デプロイメント・ディスクリプタは、次のDOCTYPE
宣言で開始する必要があります。
注意: デフォルトのキャラクタ・セットがASCIIではなくEBCDICである環境にCoherenceをデプロイする場合、このディスクリプタ・ファイルがASCII形式であり、ランタイム環境にバイナリ形式でデプロイされることを確認してください。 |
デフォルトのtangosol-coherence.xml
ファイルに別の定義を指定することもできますが、オペレーション構成の最適なアプローチはオーバーライド・ファイルを指定することです。オーバーライド・ファイルには、調整するオペレーション・ディスクリプタのサブセットのみを記述します。オーバーライド・ファイルのデフォルト名はtangosol-coherence-override.xml
で、クラスパスで最初に見つかったインスタンスが使用されます。オーバーライド・ファイルの形式はオペレーション・ディスクリプタと同じですが、すべての要素はオプションであり、欠落している要素はオペレーション・ディスクリプタから簡単にロードされる点が異なります。
オーバーライド・ファイルを複数レベルに構成することもできます。これにより、ステージングと本番など、類似のデプロイメント環境間で追加のチューニングが可能になります。たとえば、この機能を使用して、デプロイメント・タイプ(評価、デプロイメント、本番)に基づいてロギングの詳細度などが異なる構成を提供できます。ロギングの詳細度の詳細は、「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コマンドラインからオーバーライドできます。この機能により、すべてのクラスタ・ノードで同じオペレーション・ディスクリプタ(およびオーバーライド・ファイル)を使用し、システム・プロパティで各ノードをカスタマイズできます。この機能の詳細は、付録C「コマンドラインのオーバーライド」を参照してください。
表A-1には、オペレーション構成で使用可能なすべての非終端要素が一覧表示されています。
表A-1 オペレーション構成の非終端要素
要素 | 使用場所 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ルート要素 |
configurable-cache-factory-config |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
access-controller、address-provider、callback-handler、configurable-cache-factory-config、filters、services |
|
socket-provider、service-failure-policy |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
使用場所: security-config
表A-2は、access-controller
要素で定義可能なサブ要素について説明しています。
表A-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
説明
com.tangosol.net.AddressProvider
インタフェースを実装するアドレス・ファクトリの構成情報を記述します。
要素
表A-3は、address-provider
要素で定義可能なサブ要素について説明しています。
表A-3 address-providerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
この要素は、 |
< |
オプション |
アドレス・プロバイダ・インスタンスを作成するための、ファクトリ・クラスの完全修飾名を指定します。インスタンスは、 この要素は、 |
< |
オプション |
オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。 |
オプション |
|
使用場所: cluster-config
説明
これを指定すると、クラスタ・メンバーシップが、ユニキャスト・アドレスのコレクションまたはアドレス範囲で指定されたクラスタ・ノードに制限されます。ユニキャスト・アドレスは、認可されたクラスタ・ノードのunicast-listener
要素のアドレス値です。任意の数のhost-address
要素およびhost-range
要素を指定できます。
要素
表A-4は、authorized-hosts
要素で定義可能なサブ要素について説明しています。
表A-4 authorized-hostsのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
IPアドレスまたはホスト名を指定します。これを指定すると、host-addressが指定されたホスト、または指定されたhost-range内のホストのみがクラスタに参加できます。内容のオーバーライド属性 |
オプション |
IPアドレスの範囲を指定します。これを指定すると、host-addressが指定されたホスト、または指定されたhost-range内のホストのみがクラスタに参加できます。内容のオーバーライド属性 |
|
|
オプション |
新しいクラスタ・メンバーを受け入れるかどうかを判断するためクラスタによって使用される |
内容のオーバーライド属性xml-override
およびid
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。「要素の属性」を参照してください。
使用場所: coherence
説明
cache-factory-builder-config
要素には、com.tangosol.net.CacheFactoryBuilder
インタフェースのインスタンスを作成するための構成情報を記述します。デフォルトの実装はcom.tangosol.net.DefaultCacheFactoryBuilder
クラスで、高度な用途では、これを拡張してConfigurableCacheFactory
インスタンスを作成および管理するためのよりドメイン固有なロジックを提供できます。
複数のクラス・ローダーにわたる複数のキャッシュ・ファクトリ構成を構築および管理するには、カスタムのCacheFactoryBuilder
実装を使用します。これは、異なるクラス・ローダーによってスコープ設定されるアプリケーションが、異なるキャッシュ構成ファイルを使用できるようにする高度な使用例(JavaEEおよびOSGIと同様)です。たとえば、次のコードでは、2つのクラス・ローダーのカスタムConfigurableCacheFactory
実装を使用します。
CacheFactoryBuilder cfb = CacheFactory.getCacheFactoryBuilder(); //load the first configuration cfb.getConfigurableCacheFactory("example-config.xml", loader0); CacheFactory.ensureCluster(); NamedCache cache = CacheFactory.getCache("dist-example"); //load the second configuration cfb.getConfigurableCacheFactory("example-config1.xml", loader1); CacheFactory.ensureCluster(); NamedCache cache1 = CacheFactory.getCache("dist-example1");
要素
表A-5は、cache-factory-builder-config
要素で定義可能な要素について説明しています。
表A-5 cache-factory-builder-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
必須 |
|
オプション |
キャッシュ・ファクトリ・ビルダー実装の初期化パラメータを記述します。 |
使用場所: security-config
表A-6は、callback-handler
要素で定義可能な要素について説明しています。
表A-6 callback-handlerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
|
オプション |
|
使用場所: <coherence>
説明
通信パラメータやサービス・パラメータなどのクラスタ構成情報を記述します。
要素
表A-7は、cluster-config
要素で定義可能なサブ要素について説明しています。
表A-7 cluster-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
クラスタ・メンバーの位置とロールの定義に有用な、詳細な識別情報を指定します。 |
|
必須 |
Point-to-Pointネットワーク通信の受信に使用するユニキャスト・リスナーの構成情報を指定します。 |
|
必須 |
Point-to-Multipointネットワーク通信の受信に使用するマルチキャスト・リスナーの構成情報を指定します。 |
|
必須 |
停止検出に使用するTCPリング・リスナーの構成情報を指定します。 |
|
必須 |
外部シャットダウン・リクエストを受信したときに実行するアクションを指定します。 |
|
必須 |
サービスのデッドロックの検出と解決に使用されるサービス・ガーディアンの構成情報を指定します。 |
|
必須 |
ネットワーク・データ転送に使用するパケット・スピーカーの構成情報を指定します。 |
|
必須 |
ネットワーク・データ転送の管理に使用するパケット・パブリッシャの構成情報を指定します。 |
|
必須 |
受信するクラスタ通信のディスパッチに使用する受信メッセージ・ハンドラの構成情報を指定します。 |
|
必須 |
送信するクラスタ通信のディスパッチに使用する送信メッセージ・ハンドラの構成情報を指定します。 |
|
オプション |
クラスタに参加できるホストを指定します。 |
|
|
必須 |
使用可能なCoherenceサービスすべての宣言データを指定します。 |
|
オプション |
クラスタ・ノード間で転送されるデータに対するカスタム変換の実行に使用できるデータ変換フィルタを指定します。 |
オプション |
|
|
必須 |
ソケット・プロバイダの定義を記述します。 |
|
オプション |
クラスタ・サービスのクォーラムベース・アクション・ポリシーの構成情報を記述します。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: <cluster-config>
説明
cluster-quorum-policy
要素には、クラスタ・サービス用のクォーラム・ポリシー設定を記述します。
要素
表A-8は、cluster-quorum-policy
要素で定義可能なサブ要素について説明しています。
表A-8 cluster-quorum-policy-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
根本原因に関係なく、ネットワークのタイムアウトの検出により1つ以上のクラスタ・メンバーを終了するために保持する必要のある、クラスタ・メンバーの最小数を指定します。( <timeout-survivor-quorum role="Server">50 </timeout-survivor-quorum> この値は、負でない整数である必要があります。 |
|
オプション |
カスタム・クォーラム・ポリシーを提供するクラスを指定します。この要素は、 クラスは、 |
|
オプション |
カスタム・アクション・ポリシー・インスタンスを作成するためのファクトリ・クラスを指定します。この要素は、 この要素は、 |
ルート要素
説明
coherence
要素は、オペレーション・デプロイメント・ディスクリプタtangosol-coherence.xml
のルート要素です。
要素
表A-9は、coherence
要素で定義可能な要素について説明しています。
表A-9 coherenceのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
必須 |
クラスタ構成情報を記述します。この要素では、ほとんどの通信およびサービスのパラメータを定義します。 |
|
必須 |
ロギング機能の構成情報を記述します。 |
|
必須 |
構成可能なキャッシュ・ファクトリの構成情報を記述します。これにより、キャッシュ構成設定のロード元およびロード方法を制御します。 |
|
必須 |
キャッシュ・ファクトリ・ビルダーの構成情報を記述します。これにより、複数のクラス・ローダーにわたり、複数のキャッシュ・ファクトリ構成の構築および管理が可能になります。 |
|
必須 |
Coherenceの管理フレームワークの構成情報を記述します。詳細は、第34章「JMXを使用したCoherenceの管理方法」を参照してください。 |
|
オプション |
Coherenceのセキュリティ・フレームワークの構成情報を記述します。 |
|
オプション |
エディションおよび操作モードの構成を記述します。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: coherence
説明
configurable-cache-factory-config
要素には、com.tangosol.net.ConfigurableCacheFactory
インタフェースのインスタンスを作成するための構成情報を記述します。デフォルトの実装は、com.tangosol.net.DefaultConfigurableCacheFactory
クラスです。
カスタムのConfigurableCacheFactory
実装の使用は高度な使用例で、通常、異なるクラス・ローダーによってスコープ設定されるアプリケーションが、異なるキャッシュ構成ファイルを使用できるようにするために使用されます(JavaEEおよびOSGIと同様)。通常、そのような場合には、DefaultConfigurableCacheFactory
クラスが拡張されます。
次の例では、異なるキャッシュ定義を含み、異なるClassLoaders
を使用する2つの構成ファイルをロードします。
//load the first configuration and use a cache ConfigurableCacheFactory dccf= new DefaultConfigurableCacheFactory("example-config.xml", loader0); NamedCache cache = dccf.ensureCache("dist-example", loader0); cache.put(key, value); //load the second cache configuration and use a cache ConfigurableCacheFactory dccf1= new DefaultConfigurableCacheFactory("example-config1.xml", loader1); NamedCache cache1 = dccf1.ensureCache("dist-example1", loader1); cache1.put(key, value);
注意: この例では、各キャッシュ定義が異なるサービス名を使用する必要があります。異なるサービス名を使用しない場合、異なる構成ディスクリプタのファクトリによりサービスが開始されたことを示す例外がスローされます。 |
要素
表A-10は、configurable-cache-factory-config
要素で定義可能な要素について説明しています。
表A-10 configurable-cache-factory-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
|
オプション |
キャッシュ構成ファクトリ実装の初期化パラメータを記述します。デフォルトのキャッシュ構成ファクトリ・クラスの場合、次のように1つのパラメータが使用されます。 <init-param> <param-type>java.lang.String</param-type> <param-value>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の一部です。 |
要素
表A-11は、filters
要素で定義可能な要素について説明しています。
表A-11 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> 標準的なフィルタのパラメータ値の詳細は、第9章「ネットワーク・フィルタの使用方法」を参照してください。 |
内容のオーバーライド属性id
およびxml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。これらの属性の詳細は、「要素の属性」を参照してください。
圧縮filters
(com.tangosol.net.CompressionFilter
)では、表A-12に記載されたパラメータがサポートされます(詳細は、java.util.zip.Deflater
を参照)。
表A-12 圧縮フィルタのパラメータ
パラメータ名 | 値の説明 |
---|---|
|
圧縮バッファ長をバイト単位で指定します。 有効な値は、正の整数またはゼロです。 デフォルト値は0です。 |
|
圧縮レベルを指定します。有効な値は次のとおりです。
デフォルト値はdefaultです。 |
|
圧縮方針を指定します。有効な値は次のとおりです。
デフォルト値はgzipです。 |
使用場所: packet-delivery
説明
flow-control要素には、パケット速度の調整およびリモートGCの検出に関連する構成情報を記述します。
リモートGCの検出
Coherenceでリモート一時停止検出を使用すると、(GCが長いなどが原因で)応答のないクラスタ・ノードを検出し、それに対して反応できます。ノードが一時停止としてマークされた場合、そのノードを送信先とするパケットは、ノードが応答を再開するまでは、通常より遅い速度で送信されます。リモートGCの検出を使用すると、ノードが応答できない間にノードがあふれないようにできます。
パケット速度の調整
Coherenceでフロー制御を使用すると、Point-to-Pointの転送統計に基づき、特定のクラスタ・ノードに転送されるパケット速度を動的に調整できます。
要素
表A-13は、flow-control
要素で定義可能な要素について説明しています。
表A-13 flow-controlのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
フロー制御を有効にするかどうかを指定します。デフォルトはtrueです。 |
オプション |
応答のないクラスタ・ノードに再送信するパケットの数を定義します。このパケット数を超過すると、そのノードは一時停止していると見なされます。 |
|
オプション |
クラスタ・ノードに送信する未確認パケットの数を定義します。このパケット数を超過すると、そのノードを送信先とするパケットは遅延されます。 |
使用場所: authorized-hosts
説明
クラスタに参加できるノードのユニキャスト・アドレスの範囲を指定します。
要素
表A-14は、host-range
要素で定義可能な要素について説明しています。
表A-14 host-rangeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
ホスト・アドレスの範囲の開始IPアドレスを指定します(例: 198.168.1.1)。 |
< |
必須 |
ホストの範囲の終了IPアドレスを指定します(例: 198.168.2.255)。 |
内容のオーバーライド属性id
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: security-config
説明
<identity-asserter>
要素には、com.tangosol.net.security.IdentityAsserter
インタフェースを実装するクラスの構成情報を記述します。このクラスは、ユーザーのIDを確立するためIDトークンを検証する際にコールされ、Coherence*Extendプロキシ・サーバーで使用されます。IDアサーション・プロバイダが(Coherence*Extendクライアント上で使用される)IDトランスフォーマとともに使用され、有効なクライアントのみが拡張プロキシに接続できるようにします。
要素
表A-15は、<identity-asserter>
要素で定義可能な要素について説明しています。
表A-15 identity-asserterのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
|
|
オプション |
asserterインスタンスを作成するためのファクトリ・クラスを指定します。このインスタンスは、 この要素は、 |
< |
オプション |
オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。 |
オプション |
アサーション・プロバイダ実装のクラス初期化パラメータを記述します。 |
使用場所: ssl
説明
<identity-manager>
要素には、javax.net.ssl.KeyManager
インスタンスを初期化するための構成情報を記述します。
アイデンティティ・マネージャは、そのピアへのローカル接続を認証するために使用されるキー・マテリアルの管理を行います。キー・マテリアルが使用できない場合、その接続で認証資格証明を提示することはできません。
要素
表A-16は、identity-manager
要素で定義可能な要素について説明しています。
表A-16 identity-managerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
アイデンティティ・マネージャによって使用されるアルゴリズムを指定します。デフォルト値は |
|
オプション |
セキュリティ・プロバイダ・インスタンスの構成を指定します。 |
オプション |
キー・ストア実装の構成を指定します。 |
|
|
必須 |
秘密鍵のパスワードを指定します。 |
使用場所: security-config
説明
<identity-transformer>
要素には、com.tangosol.net.security.IdentityTransformer
インタフェースを実装するクラスの構成情報を記述します。このクラスは、Subject
(.NETではPrincipal
)を、IDをアサートしCoherence*Extendクライアントで使用されるトークンに変換する際にコールされます。IDトランスフォーマが(Coherence*Extendプロキシ・サーバー上で使用される)IDアサーション・プロバイダとともに使用され、有効なクライアントのみが拡張プロキシに接続できるようにします。
要素
表A-17は、<identity-transformer>
要素で定義可能な要素について説明しています。
表A-17 identity-transformerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
|
|
オプション |
asserterインスタンスを作成するためのファクトリ・クラスを指定します。このインスタンスは、 この要素は、 |
< |
オプション |
オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。 |
オプション |
トランスフォーマ実装のクラス初期化パラメータを記述します。 |
使用場所: cluster-config
説明
incoming-message-handler
は、UDPパケットを論理メッセージにアセンブルして、それを適切なCoherenceサービスにディスパッチして処理させます。
要素
表A-18は、incoming-message-handler
要素で定義可能なサブ要素について説明しています。
表A-18 incoming-message-handlerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
新しいクラスタ・メンバーのシステム時刻とクラスタ時刻との間の差異を測定する際に、ブロードキャスト・メッセージの送受信間の最大時刻差異を指定します。差異が小さいほど、クラスタ内で稼働する複数のシステム間でクラスタ時刻がより近いことが確実となります。ただし、クラスタに参加するプロセスは、指定された差異内でメッセージの交換が実行できるまで拡張されます。通常は、20ミリ秒程度の値で十分ですが、負荷の高いクラスタや複数のネットワーク・ホップでは、より大きな値が必要になる場合があります。デフォルト値は16です。 |
< |
必須 |
パケットの受信側で否定応答(パケット・リクエスト)を使用して、欠落パケットを認識したときに積極的に応答するかどうかを指定します。詳細と構成は、「notification-queueing」を参照してください。有効な値は、 |
< |
必須 |
受信メッセージ・ハンドラの実行スレッドの優先度を指定します。有効な値は1から10です。デフォルト値は7です。 |
必須 |
Coherenceがバッファリングする受信パケットの数を指定します。この数を超過すると、受信パケットはブロックされます。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: init-params
説明
個別の初期化パラメータを定義します。
要素
表A-19は、init-param
要素で定義可能な要素について説明しています。
表A-19 init-paramのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
クラスに渡されるパラメータの名前を指定します。 |
< |
オプション |
クラスに渡されるパラメータのデータ型を指定します。 |
< |
必須 |
パラメータで渡される値を指定します(例: |
内容のオーバーライド属性id
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: address-provider
、filters
、services
、configurable-cache-factory-config
、access-controller
およびcallback-handler
説明
一連の初期化パラメータを定義します。
要素
表A-20は、init-param
要素で定義可能な要素について説明しています。
使用場所: socket-provider、service-failure-policy
説明
<instance>
要素には、カスタム機能をプラグインするために使用される実装クラスまたはクラス・ファクトリの構成を記述します。
要素
表A-21は、instance
要素で定義可能な要素について説明しています。
表A-21 instanceのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
実装クラスの完全修飾名を指定します。 この要素は、 |
|
オプション |
実装クラス・インスタンスを作成するための、ファクトリ・クラスの完全修飾名を指定します。 この要素は、 |
< |
オプション |
オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。 |
オプション |
実装クラスのクラス初期化パラメータを記述します。 |
使用場所: identity-manager、trust-manager
説明
key-store
要素は、SSLの実装時に使用するキー・ストア実装の構成を指定します。キー・ストア実装は、java.security.KeyStore
クラスのインスタンスです。
要素
表A-22は、key-store
要素で定義可能な要素について説明しています。
表A-22 key-storeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
必須 |
キー・ストアへのUniform Resource Locator(URL)を指定します。 |
|
オプション |
キャッシュ・ストアのパスワードを指定します。 |
|
オプション |
|
使用場所: coherence
表A-23は、license-config
要素で定義可能な要素について説明しています。
表A-23 license-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
メンバーが使用する製品のエディションを指定します。この方法では、使用するエディションをメンバーごとに指定することで、同じクラスタの中で複数の製品エディションを使用できます。有効な値は、 |
< |
オプション |
製品を開発モードと本番モードのいずれで使用するかを指定します。有効な値は、 |
使用場所: coherence
要素
次の表は、logging-config
要素で定義可能な要素について説明しています。
表A-24 logging-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
ロギング・システムで使用する出力デバイスを指定します。有効な値は次のとおりです。
|
< |
オプション |
Coherence関連のメッセージの記録に使用するよう選択されたロギング・システム内でのロガー名を指定します。この値は、JDKおよびlog4jロギング・システムでのみ使用されます。 デフォルト値は 事前定義されているオーバーライド値は |
< |
必須 |
どのログ・メッセージをログ出力先に出力するかを指定します。有効な値は次のとおりです。
デフォルト値は |
< |
必須 |
ログ出力先に渡す前に、ロギング・レベルが指定されたメッセージをフォーマットする方法を指定します。message-format要素の値は、次の置換可能なパラメータを含む静的テキストです。
デフォルト値は次のとおりです。 {date} Oracle Coherence {version} <{level}> (thread={thread}, member={member}): {text} |
< |
必須 |
ログ出力デーモンがメッセージ・キューから処理する文字の最大数を指定します。この数を超過すると、キューに残っているメッセージがすべて破棄されます。合計文字数がこの最大数を超えたメッセージは、切り捨てられません。また、破棄されるすべてのメッセージはロギング・システムでまとめられて、破棄されたメッセージの数およびその合計サイズの詳細を記録した単一のログ・エントリが出力されます。キューが処理されると(空になると)後続のメッセージをログに記録できるようにログ出力がリセットされるため、ロギングの切捨ては一時的なものに限定されます。 この設定の目的は、ロギング自体で失敗の状態からのリカバリができない状況を回避することです。たとえば、タイミングが密接していると、ロギングにより実際のタイミングが変わる場合があり、それにより失敗が多く発生しロギングも増加して、悪循環に陥る可能性があります。任意の時点で実行されるロギングの制限となるものは、そのような悪循環の発生を防ぐ圧力弁です。システムの重要な部分への影響をさらに軽減するために、ロギングは優先度の低い専用のスレッドで実行されます。 有効な値は、正の整数またはゼロです。ゼロは制限がないことを示します。 製品モードのデフォルト値は4096、開発モードのデフォルト値は2147483647です。事前構成されているオーバーライド値は |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: coherence
要素
表A-25は、management-config
要素で定義可能な要素について説明しています。
表A-25 management-configのサブ要素
要素 | オプション/必須 | 説明 |
---|---|---|
< |
必須 |
クラスタ・ノードのJVMに
デフォルト値は |
< |
必須 |
このクラスタ・ノードで、管理オブジェクトをリモートのMBeanサーバーに公開するかどうかを指定します。有効な値は、 |
|
オプション |
リモート管理情報のリフレッシュに使用されるメソッドを指定します。 有効な値は、 デフォルト値は 事前構成されているオーバーライド値は |
|
オプション |
管理ノードでリモートのMBean情報が無効化されるまでの時間間隔(ミリ秒単位)を指定します。 有効な値は、時間間隔を表す文字列です。 デフォルト値は 事前構成されているオーバーライド値は |
|
オプション |
MBean情報のリフレッシュ時に管理ノードがリモート・ノードからのレスポンスを待つ期間を指定します。この値はrefresh-expiryの間隔より小さくする必要があります。 有効な値は、時間間隔を表す文字列です。 デフォルト値は 事前構成されているオーバーライド値は |
< |
オプション |
このクラスタ・ノードで公開された管理オブジェクトに、実行時属性の変更操作を許可するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値は |
< |
オプション |
Coherence管理フレームワークにより公開されるMBeanを登録するために使用されるMBeanサーバーのデフォルトのドメイン名を指定します。この値は、インプロセスMBeanサーバーを持ち、ローカルまたはその他のノードの管理オブジェクトの管理を可能にするクラスタ・ノードによってのみ使用されます。この値が指定されていない場合、最初に存在したMBeanサーバーが使用されます。 この要素は、 |
< |
オプション |
リモート管理に使用する起動サービスの名前を指定します。この要素は、 |
|
オプション |
|
|
オプション |
ノードがクラスタに参加するときに登録されるMBeanのリストを記述します。 |
オプション |
登録前にMBeanをフィルタ処理するために使用されるフィルタ・クラスの構成情報を記述します。 |
|
|
オプション |
Reporterの構成を記述します。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。
使用場所: mbeans
説明
mbean
要素には、Coherence Managementインフラストラクチャでインスタンス化および登録される要素のリストを記述します。
要素
表A-26は、mbean
要素で定義可能なサブ要素について説明しています。
表A-26 mbeanのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
Coherence管理フレームワークでインスタンス化および登録する標準MBeanのフル・クラス名を指定します。正しくインスタンス化するには、クラスパスにMBeanクラスを指定する必要があります。 この要素は、 |
|
オプション |
Coherence管理フレームワークに登録するMBeanを取得するために使用するクラス・ファクトリの名前を指定します。正しくインスタンス化するには、クラスパスにファクトリ・クラスを指定する必要があります。この要素は、 この要素は、 |
|
オプション |
JMX <mbean-query>java.lang:*</mbean-query> この要素は、 |
|
オプション |
MBeanのインスタンス化に使用されるファクトリ・クラス( |
|
必須 |
Coherence管理フレームワークに登録するMBeanのJMX |
|
オプション |
MBeanをクラスタ全体で参照可能にするかどうかを指定します。有効な値は、 デフォルト値は |
|
オプション |
このインスタンスでMBeanをインスタンス化および登録するかどうかを指定します。有効な値は、 デフォルト値は |
|
オプション |
MBeanがノード接続のライフ・サイクルを超えるかどうかを指定します。有効な値は、 デフォルト値は |
使用場所: management-config
説明
mbeans
要素は、カスタムMBeanを定義するためのルート要素で、通常、カスタムMBean構成ファイルのルート要素です。これには、Coherence管理フレームワークでインスタンス化および登録されるmbean要素のリストを記述します。
要素
表A-27は、mbeans
要素で定義可能な要素について説明しています。
表A-27 mbeansのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
Coherence管理フレームワークでインスタンス化および登録されるMBeanのタイプ、実装および |
使用場所: management-config
説明
mbean-filter
要素は、MBeanサーバーに登録する前にMBean名を評価するフィルタの指定に使用します。com.tangosol.net.management.ObjectNameExcludeFilter
クラスはデフォルトのフィルタで、標準のRegexパターンを使用するJMXオブジェクト名に基づいて、MBeanが登録されないように除外する場合に使用します。リストは、空白文字により区切られた名前のリストとして入力されます。次のMBeanは、出荷状態の構成では除外されています。
<mbean-filter> <class-name>com.tangosol.net.management.ObjectNameExcludeFilter</class-name> <init-params> <init-param> <param-type>string</param-type> <param-value system-property="tangosol.coherence.management.exclude"> .*type=Service,name=Management,.* .*type=Platform,Domain=java.lang,subType=ClassLoading,.* .*type=Platform,Domain=java.lang,subType=Compilation,.* .*type=Platform,Domain=java.lang,subType=MemoryManager,.* .*type=Platform,Domain=java.lang,subType=Threading,.* </param-value> </init-param> </init-params> </mbean-filter>
要素
表A-43は、mbean-filter
要素で定義可能なサブ要素について説明しています。
表A-28 mbean-filterのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
MBeanをフィルタ処理するためのフィルタ・クラスの名前を指定します。 この要素は、 |
|
オプション |
フィルタ・インスタンスを作成するためのファクトリ・クラスを指定します。 この要素は、 この要素は、 |
< |
オプション |
オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。 |
オプション |
フィルタ実装のクラス初期化パラメータを記述します。 |
使用場所: cluster-config
member-identity
要素には、クラスタ・メンバーの位置とロールの定義に有用な、詳細な識別情報を記述します。
要素
表A-29は、member-identity要素で定義可能な要素について説明しています。
表A-29 member-identityのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
|
< |
オプション |
|
< |
オプション |
|
< |
オプション |
|
< |
オプション |
|
< |
オプション |
|
< |
オプション |
|
< |
オプション |
|
使用場所: outgoing-message-handler
説明
<message-pool>
要素を使用して、メッセージ転送用にプールされるメッセージ・バッファの数を制御します。メッセージ・バッファをプールすると、メッセージングに必要なメモリー・リソースがプールされ、JVMガベージ・コレクタの圧力が緩和されます。
メッセージ・プールは、指定されたサイズの任意の数のセグメントで構成されます。たとえば、セグメント・サイズが10MBの4つのセグメントで構成されるプールは、最大で40MBのシリアライズ用領域を保持できます。セグメント数とセグメント・サイズは、それぞれ<segment>
要素と<segment-size>
要素を使用して定義されます。
各プール・セグメントが特定のサイズのメッセージ・バッファを格納します。最小サイズのバッファは、<min-buffer-size>
要素で定義されます。その後、次のセグメントの次のバッファ・サイズが、<growth-factor>
値('min-buffer-size' << growth-factor
)を使用してビット単位の左シフトにより計算されます。n
をgrowth-factor値とした場合、n分の左シフトとは2nを乗算するのと同じになります。つまり、growth-factorが2の場合はmin-buffer-sizeの4倍になります。growth-factorが3の場合はmin-buffer-sizeの8倍になります(以降同様)。
たとえば、表A-30に示されているデフォルト・プール値の場合、メッセージ・プールは、最初のプール・セグメントに1KBのメッセージ・バッファ、2番目のプール・セグメントに4KBのメッセージ・バッファ、3番目のプール・セグメントに16KBのメッセージ・バッファ、4番目のプール・セグメントに64KBのメッセージ・バッファが含まれることになります。growth-factorを3にし、その他は同じデフォルト値を使用すると、バッファ・サイズはそれぞれ1KB、8KB、64KB、512KBとなります。
ネットワーク・バッファ(入力および出力)およびシリアライズ・バッファ用に獲得される領域は、その容量が実際の使用量を上回る場合、定期的に再利用されます。
要素
表A-30は、message-pool
要素で定義可能な要素について説明しています。
表A-30 message-poolのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
バッファを格納するためにメッセージ・プールが使用するセグメント数を指定します。各セグメントが特定のサイズのバッファを格納します。セグメント間のバッファ・サイズの違いは、 デフォルト値は |
|
オプション |
単一のプール・セグメントの最大サイズを指定します。プール全体の最大サイズは、セグメント総数とセグメントの最大サイズを掛けたものです。 デフォルト値は |
|
オプション |
セグメントに格納できる最小バッファ・サイズを指定します。この値は、1024の倍数である必要があります。したがって、可能な最小バッファは1024バイトとなります。 デフォルト値は |
|
オプション |
連続するセグメント間の成長率を(ビット単位の左シフトとして)指定します。 デフォルト値は |
使用場所: cluster-config
説明
マルチキャスト・リスナーの構成情報を指定します。この要素は、クラスタがクラスタ全体およびPoint-to-Multipoint通信に使用するアドレス(<address>
サブ要素を参照)およびポート(<port>
サブ要素を参照)を指定するために使用します。クラスタ内のノードはすべて、同じマルチキャスト・アドレスおよびポートを使用する必要があります。同じネットワークの別のクラスタは、別のマルチキャスト・アドレスを使用する必要があります。
マルチキャストフリーのクラスタ化
デフォルトでは、クラスタの形成時に他のノードを検出するためにマルチキャスト・プロトコルが使用されます。マルチキャスト・ネットワーキングが適さない場合、または環境内で使用できない場合には、well-known-addresses
機能を使用するとマルチキャスト・トラフィックを使用する必要がなくなります。マルチキャストを使用してクラスタを設定するのが困難な場合は、第43章「マルチキャスト接続テストの実行」を参照してください。
要素
表A-31は、multicast-listener
要素で定義可能な要素について説明しています。
表A-31 multicast-listenerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
ソケットがリスニングまたは公開するマルチキャストIPアドレスを指定します。有効な値は224.0.0.0から239.255.255.255です。デフォルト値は、リリースおよびビルド・レベルによって異なり、一般的に |
< |
必須 |
ソケットがリスニングまたは公開するポートを指定します。有効な値は1から65535です。デフォルト値は、リリースおよびビルド・レベルによって異なり、一般的に |
|
オプション |
マルチキャスト・ソケットがバインドされるIPアドレスを指定します。デフォルトでは、マルチキャスト・ソケットにはunicast-listenerのIPアドレスのインタフェース(NIC)が使用されます。このオプションにより、インタフェースを指定できます。このアドレスを 警告: まれな例外を除いて、この特定のオプションは使用しないことを強くお薦めします。これは、部分障害と呼ばれる状態に陥る可能性があります。部分障害は、一部のクラスタ通信は機能しているが、その他のクラスタ通信に障害がある場合に発生します。このオプションを使用すると、マルチキャスト・トラフィックに使用されるインタフェース(およびそれに伴うネットワーク)が、ユニキャスト(UDP/IP)およびTCPリング(TCP/IP)トラフィックに使用されるインタフェース(およびそれに伴うネットワーク)と異なる可能性があるため、部分障害が発生することがあります。1つのインタフェース(またはネットワーク)に障害が発生すると、一部の通信は引き続き正常に行われますが、その他の通信は失敗します。これにより、フェイルオーバーが長時間発生する場合があります。クラスタ化では、ノード(およびそれに伴うインタフェース)の障害を処理するため、すべての通信が一緒に失敗することが望ましいので、このオプションは使用しないことを強くお薦めします。 |
< |
必須 |
マルチキャストの有効時間設定を指定します。これにより、パケットが横断するホップの最大数を決定します。ホップは、あるネットワーク・セグメントから別のネットワーク・セグメントへの、ルーターを使用した横断として測定されます。有効な値は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要素で定義可能な要素について説明しています。
表A-32 notification-queuingのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
パケット・パブリッシャの最大遅延時間を指定します(ミリ秒単位)。この時間を超過すると、ACKパケットが送信されます。ACKパケットは、バッチ化された肯定応答数がACKパケットを満たした場合に、早期に送信されることがあります。この値はリモート・ノードの |
< |
必須 |
パケット・パブリッシャの遅延時間を指定します(ミリ秒単位)。この時間を超過すると、NACKパケットが送信されます。デフォルト値は1です。 |
使用場所: cluster-config
説明
outgoing-message-handler要素には、送信メッセージ・ハンドラ(ディスパッチャとも呼ばれる)関連の構成情報を記述します。
要素
表A-33は、outgoing-message-handler
要素で定義可能な要素について説明しています。
表A-33 outgoing-message-handlerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
このハンドラにより使用される |
オプション |
メッセージ・バッファ・プールのサイズを指定します。 |
使用場所: flow-control
説明
クラスタ・ノードに送信する未確認パケットの数を定義します。このパケット数を超過すると、そのノードを送信先とするパケットは遅延されます。これにより、送信側が原因で受信側のネットワーク・バッファがオーバーフローすることがなくなります。
自動チューニング
この値は、maximum-packets
要素を使用して数値を明示的に指定するか、またはmaximum-packets
要素とminimum-packets
要素の両方を使用して範囲として指定する必要があります。範囲を指定する場合、この設定はネットワーク統計に基づいて動的に調整されます。
要素
表A-34は、outstanding-packets要素で定義可能な要素について説明しています。
表A-34 outstanding-packetsのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
クラスタ・ノードに送信する未確認パケットの最大数です。このパケット数を超過すると、そのノードを送信先とするパケットは遅延されます。この値を256未満に設定しないことをお薦めします。デフォルト値は4096です。 |
< |
オプション |
クラスタ・ノードに送信する未確認パケット数の範囲の下限です。このパケット数を超過すると、そのノードを送信先とするパケットは遅延されます。この値を16未満に設定しないことをお薦めします。デフォルト値は64です。 |
使用場所: unicast-listener
、multicast-listener
、packet-publisher
説明
データグラム・ソケットに使用するオペレーティング・システムのバッファのサイズを指定します(パケットまたはバイト単位)。
パフォーマンスへの影響
インバウンド・バッファを大きく指定すると、Coherenceネットワーク層が、Javaガベージ・コレクタを原因とするJVMの一時停止から保護されます。JVMの一時停止中は、Coherenceは任意のインバウンド・ソケットからパケットをデキューできません。一時停止時間がパケット・バッファのオーバーフローを引き起こすほど長いと、発信元ノードがパケット消失を検出してパケットを再送信する必要があるため、パケットの受信が遅延します。
単なるヒント
オペレーティング・システムは指定された値をヒントとして扱うのみで、その値を割り当てる義務はありません。小さい領域しか割り当てられない場合、要求されたCoherenceは警告を発行して、制限されたバッファで操作を続行することになり、パフォーマンスが低下することがあります。大きなバッファを割り当てられるようにオペレーティング・システムを構成する方法の詳細は、第45章「パフォーマンス・チューニング」を参照してください。
待機時間とスループットの比較
これを送信用に設定する際(<packet-publisher>
内)、値を大きくするとスループットが向上し、値を小さくすると待機時間が減少します。この値を変更する場合は、これらすべてのディメンションのパフォーマンスに与える影響を評価することをお薦めします。
要素
表A-35は、packet-buffer
要素で定義可能な要素について説明しています。
表A-35 packet-bufferのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
unicast-listener、multicast-listenerおよびpacket-publisherの場合: データグラム・ソケット自身がバッファに求められるサイズのpacket-sizeのパケット数を指定します。
|
|
オプション |
基礎になるソケット・バッファの要求されるサイズを、パケット数ではなくバイト数で指定します。
|
使用場所: packet-delivery
説明
packet-bundling
要素には、ネットワーク切替えインフラストラクチャにかかる負荷を軽減するために、複数の小さなパケットを1つの大きなパケットにバンドルする操作に関連する構成情報を記述します。
デフォルトの構成
デフォルトのpacket-bundling
は、体感できる遅延を加えることなくバンドルを実行できる、アグレッシブさが最小の設定です。よりアグレッシブなバンドルの利点は、ネットワーク・インフラストラクチャとアプリケーション・オブジェクトの一般的なデータ・サイズおよびアクセス・パターンにより異なります。
要素
表A-36は、packet-bundling
要素で定義可能な要素について説明しています。
表A-36 packet-bundlingのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
追加のパケットがバンドルされるまで待機する間のパケットの最大遅延時間。この値を0に設定すると、待機のないアルゴリズムとなり、即座にアクセスできるパケットのみがバンドルされます。0より大きい値を設定すると、追加のパケットが使用可能になるまで待機する間に、多少の送信遅延が発生します。スループットに有害な影響が出ないように、通常この値は250マイクロ秒未満に設定します。単位を指定しない場合は、ナノ秒と見なされます。 デフォルト値は1us(マイクロ秒)です。 |
< |
オプション |
パケット遅延アルゴリズムのアグレッシブさを指定します。maximum-deferral-time要素では遅延時間の上限を定義しますが、aggression-factorは平均の遅延時間に影響します。アグレッシブさの値が高いほど、パブリッシャが追加のパケットを待つ時間が長くなります。この要素は実数で表します。多くの場合は待機時間を最小に抑えながらパケットの使用率を上げることができるように、0.0から1.0の値を使用します。 デフォルト値は0です。 |
使用場所: packet-publisher
説明
パケット配信に関連するタイミングおよび転送レートのパラメータを指定します。
停止検出
サブ要素<timeout-milliseconds>
および<heartbeat-milliseconds>
は、他のクラスタ・ノードの停止検出に使用されます。
要素
表A-37は、packet-delivery
要素で定義可能な要素について説明しています。
表A-37 packet-deliveryのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
確認が要求されるパケットの場合、対応するACKパケットを待つ最小時間をミリ秒単位で指定します。この時間を超過すると、パケットが再送信されます。デフォルト値は200です。 |
< |
必須 |
確認が要求されるパケットの場合、最大時間をミリ秒単位で指定します。この時間を超過すると、パケットが再送信されます。このタイムアウトが経過した後、Coherenceでは受信側が停止していると見なすかどうかが決定されます。これを決定するには、他のノードがその受信者と通信できているかどうかなど、他のデータも考慮されます。デフォルト値は300000です。本番で使用する場合、300000および予想される最大のGCの全所要時間の2倍より大きな値を指定することをお薦めします。 |
< |
必須 |
ハートビートの間隔を指定します。各メンバーはユニキャストのハートビートを発行し、最も上位のメンバーは、ブロードキャスト・メッセージとなるクラスタ・ハートビートを発行します。ハートビートは、高速な停止検出の一環として |
オプション |
ノード当たりのパケット速度の調整およびリモートのGCの検出を構成します。 |
|
オプション |
Coherenceでパケット使用率の最大化を試行するアグレッシブさを構成します。 |
使用場所: incoming-message-handler
、packet-publisher
説明
CoherenceがUDPパケットの送受信に使用するために内部的に維持するパケットのプール。packet-buffer
と異なり、これらのバッファはオペレーティング・システムではなくCoherenceで管理され、JVMのヒープに割り当てられます。
パフォーマンスへの影響
パケット・プールは、Coherenceネットワーク・サービス間で再利用可能なバッファとして使用されます。パケット送信の場合、これによりpacket-speaker
のキューに配置できるパケットの最大数を定義します。この数を超過すると、packet-publisher
がブロックされます。パケット受信の場合、これによりincoming-message-handler
のキューに配置できるパケットの数を定義します。この数を超過すると、unicast-listener
およびmulticast-listener
がブロックされます。
要素
表A-38は、packet-pool
要素で定義可能なサブ要素について説明しています。
表A-38 packet-poolのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
公開および受信を担当するサービスで使用する再利用可能なパケットのプールの最大サイズをバイト数で指定します。プールは、最初は小さく、必要に応じて、指定された上限まで大きくなります。 送受信用のデフォルト値は |
使用場所: cluster-config
説明
ネットワーク・データ転送を管理するパケット・パブリッシャの構成情報を指定します。
信頼性のあるパケット配信
パケット・パブリッシャは、送信したパケットが送信先のクラスタ・ノードに確実に届くように管理します。パブリッシャは肯定応答を待つ一連のパケットを保持し、ACKがpacket-delivery
再送信タイムアウトまでに届かない場合、そのパケットは再送信されます(<packet-delivery>
サブ要素を参照)。受信側ノードはACKを遅延して、一連のACKを1つのレスポンスにバッチ化します(<notification-queuing>
サブ要素を参照)。
速度調整
パブリッシャがパケットを送受信する速度は、traffic-jam
およびflow-control
の設定を使用して制御できます。速度調整は、低速のネットワークや小さなpacket-buffer
に対処する場合に必要です。
要素
表A-39は、packet-publisher
要素で定義可能な要素について説明しています。
表A-39 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)」を参照してください。 |
要素
表A-40は、packet-size
要素で定義可能なサブ要素について説明しています。
表A-40 packet-sizeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
すべてのクラスタ・メンバーが問題なく処理できるパケット・サイズをバイト単位で指定します。この値は、クラスタ内のすべてのメンバーで同一にする必要があります。値を低くすることでクラスタの最大サイズを意図的に制限できます。これには512以上の値を指定する必要があります。デフォルト値は64KBです。 |
< |
必須 |
ユニキャスト・ソケットおよびマルチキャスト・ソケットで送受信される これには この値は512以上にする必要があり、ローカル・ノードMTUに基づいてデフォルト設定されます。MTUを取得できない場合、MTU値は1500になります。 |
使用場所: cluster-config
説明
ネットワーク・データ転送に使用するパケット・スピーカーの構成情報を指定します。
オフロード送信
パケット・スピーカーは、ネットワーク上でのパケットの送信を担当します。スピーカーは、ブロックされる可能性のあるネットワーク送信処理をpacket-publisher
で検出する際に使用されます。これにより、パケット・パブリッシャはI/Oのブロックを回避し、送信パケットの準備を続行できます。パブリッシャは、パケットの負荷の変化に伴ってスピーカーを使用するかどうかを動的に選択します。
要素
表A-41は、packet-speaker
要素で定義可能なサブ要素について説明しています。
表A-41 packet-speakerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
スピーカーの起動に必要なパケットの負荷を指定します。 |
|
< |
必須 |
パケット・スピーカーの実行スレッドの優先度を指定します。有効な値は1から10です。デフォルト値は8です。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: flow-control
説明
Coherenceでリモート一時停止検出を使用すると、(GCが長いなどが原因で)応答のないクラスタ・ノードを検出し、それに対して反応できます。ノードが一時停止としてマークされた場合、そのノードを送信先とするパケットは、ノードが応答を再開するまでは、通常より遅い速度で送信されます。リモートGCの検出を使用すると、ノードが応答できない間にノードがあふれないようにできます。
要素
表A-42は、pause-detection
要素で定義可能なサブ要素について説明しています。
表A-42 pause-detectionのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
応答のないクラスタ・ノードに再送信するパケットの最大数です。このパケット数を超過すると、そのノードは一時停止していると見なされます。この値を0に指定すると、一時停止検出が無効になります。デフォルト値は16です。 |
使用場所: ssl、identity-manager、trust-manager
説明
provider要素には、java.security.Provider
クラスを拡張するセキュリティ・プロバイダの構成情報を記述します。
要素
表A-43は、provider
要素で定義可能なサブ要素について説明しています。
表A-43 providerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
クラス名は、この要素を使用するか、 |
|
オプション |
この要素は、 |
|
オプション |
この要素は、 この要素は、 |
< |
オプション |
オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。 |
オプション |
プロバイダ実装のクラス初期化パラメータを記述します。 この要素は、 |
使用場所: management-config
説明
Reporterには、JMXのレポート作成機能が用意されています。Reporterは、すぐに利用可能なレポートを提供し、さらにカスタムのレポートの作成をサポートします。レポートは、管理者および開発者が容量管理や問題のトラブルシューティングを行う際に役立ちます。
要素
表A-44は、reporter
要素で定義可能なサブ要素について説明しています。
表A-44 reporterのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
必須 |
Reporter Batch XMLの場所を指定します。デフォルト・ファイルは |
|
必須 |
ノードの起動時にReporterを自動的に起動させるかどうかを指定します。有効な値は、 デフォルト値は |
|
必須 |
Reporterを複数の管理ノード上で実行するかどうかを指定します。有効な値は、 デフォルト値は |
使用場所: coherence
要素
表A-45は、security-config
要素で定義可能なサブ要素について説明しています。
表A-45 security-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
セキュリティ機能が有効化されているかどうかを指定します。 |
< |
必須 |
コール元の認証に使用するJAAS LoginModuleの名前を指定します。この名前は、JAASで使用される構成ファイルのモジュールと一致している必要があります( |
必須 |
|
|
オプション |
|
|
オプション |
ユーザーIDを確立するためIDトークンの検証の際にコールされる |
|
オプション |
|
|
<subject-scope> |
オプション |
リモート・キャッシュまたはサービス参照がサブジェクトによって共有されるかどうかを指定します。有効な値は、 デフォルト値は |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。
使用場所: cluster-config
説明
serializers
要素には、任意の数のシリアライザ・クラス構成を記述します。シリアライザ・クラスはcom.tangosol.io.Serializer
を実装する必要があります。各シリアライザ・クラスは、serializer
サブ要素内で定義されます。オペレーション構成ファイルには、デフォルトのJavaおよびPOFのシリアライザ・クラス構成が含まれます。
<serializers> <serializer id="java"> <class-name>com.tangosol.io.DefaultSerializer</class-name> </serializer> <serializer id="pof"> <class-name>com.tangosol.io.pof.ConfigurablePofContext</class-name> <init-params> <init-param> <param-type>String</param-type> <param-value>pof-config.xml</param-value> </init-param> </init-params> </serializer> </serializers>
オペレーション構成で定義されるシリアライザは、個々のキャッシュ・スキーム定義で参照され(「serializer」を参照)、また明示的にシリアライザを定義しないサービスのデフォルト・シリアライザでも参照されます(「defaults」を参照)。
必要に応じて、オペレーション・オーバーライド・ファイルで追加のシリアライザを定義できます。
要素
表A-46は、serializer
要素で定義可能なサブ要素について説明しています。
表A-46 serializerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
|
|
オプション |
カスタムのシリアライザ・インスタンスを作成するためのファクトリ・クラスを指定します。このインスタンスは、 この要素は、 |
< |
オプション |
オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。 |
オプション |
シリアライザ実装のクラス初期化パラメータを記述します。 |
使用場所: cluster-config
説明
サービスのデッドロックを検出して解決を試みるサービス・ガーディアンの構成を指定します。
要素
表A-47は、service-guardian
要素で定義可能なサブ要素について説明しています。
表A-47 service-guardianのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
サービスがデッドロックされたり応答しなくなったりするのを回避するために使用されるタイムアウト値。 デフォルト値は 事前定義されているオーバーライド値は |
|
オプション |
動作が異常なサービス・スレッドをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。 有効な値は次のとおりです。
デフォルト値は |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。
使用場所: cluster-config
説明
Coherenceサービスの構成を指定します。
サービス・コンポーネント
構成可能なサービスの種類は、次のとおりです。
ReplicatedCache
: サービスを実行する全クラスタ・ノードの全キャッシュ・エントリのコピーを保持するキャッシュ・サービス。
ReplicatedCache.Optimistic
: 最適なロックを使用するReplicatedCache
のバージョン。
DistributedCache
: サービスを実行する複数のクラスタ・ノードにわたって、キャッシュ・エントリを均一にパーティション化するキャッシュ・サービス。
SimpleCache
: 並行処理制御なしのReplicatedCache
のバージョン。
LocalCache
: すべてのキャッシュ・エントリが1つのクラスタ・ノードに存在するキャッシュのキャッシュ・サービス。
InvocationService
: リモート・クラスタ・ノードでのカスタム操作の実行に使用されるサービス。
要素
表A-48は、services
要素で定義可能なサブ要素について説明しています。
表A-48 servicesのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
サービスの正規名を指定します。これにより、キャッシュ構成のキャッシング・スキームの |
< |
必須 |
サービスの完全修飾クラス名、またはベースのサービス・コンポーネントに対する再配置可能なコンポーネントの相対名を指定します。有効な値は次のとおりです。
|
< |
オプション |
このサービスで使用する <use-filters> <filter-name>gzip</filter-name> </use-filters> この場合、ネットワーク・メッセージに対して |
オプション |
各 |
内容のオーバーライド属性xml-override
およびid
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。
サービスまたはフィルタの初期化パラメータは、Coherenceのオペレーション構成デプロイメント・ディスクリプタの<init-param>
要素によって定義されます。init-param
の下に表示されるパラメータは、作業対象のサービスまたはフィルタによって異なります。
次の各項では、これらのサービスおよびフィルタに構成可能なパラメータについて説明します。
各項の表では、様々な要素で構成可能な具体的な<param-name>
と<param-value>
のペアについて説明します。「パラメータ名」列にはparam-name
要素の値が、「値の説明」列には対応するparam-value
要素に指定できる値が示されています。
たとえば、表A-49のエントリのサンプルは、init-params
要素が例A-2または例A-3の構成のようになることを示しています。
表A-49 表のエントリのサンプル
パラメータ値 | 値の説明 |
---|---|
|
|
例A-2 init-param構成のサンプル
... <init-params> <init-param> <param-name>local-storage</param-name> <param-value>false</param-value> </init-param> </init-params> ...
または、次のようになります。
例A-3 init-param構成の別サンプル
... <init-params> <init-param> <param-name>local-storage</param-name> <param-value>true</param-value> </init-param> </init-params> ...
DistributedCache <services
>の要素では、表A-50に記載されたパラメータがサポートされます。この設定は、coherence-cache-config.xml
ディスクリプタ内の<distributed-scheme
>要素の一部として指定することもできます。
表A-50 DistributedCacheサービスのパラメータ
パラメータ名 | 値の説明 |
---|---|
|
DistributedCacheサービスのうち、各保存単位のバックアップ・データをキャッシュに保持するメンバーの数を指定します。この値が0になっていると、異常終了した場合にキャッシュ内のデータの一部が失われます。この値がNになっていると、即座に終了したクラスタ・ノードの数がN以内の場合、キャッシュ・データが保持されます。サイズMの分散キャッシュを維持する場合、クラスタ内の合計メモリー使用量はクラスタ・ノードの数に依存するのではなく、M*(N+1)となります。 推奨値は、0、1または2です。 デフォルト値は1です。 |
|
customタイプにのみ適用されます。カスタム記憶域実装のクラス名を指定します。クラスに |
|
file-mappedタイプにのみ適用されます。ディスク永続マネージャ( デフォルト値は、Javaランタイムによって指定されるデフォルトの一時ディレクトリです。 |
|
off-heapおよびfile-mappedタイプにのみ適用されます。バッファの初期サイズをバイト単位で指定します。この要素の値は、
値に係数が含まれていない場合は、 有効な値は、 デフォルト値は |
|
off-heapおよびfile-mappedタイプにのみ適用されます。バッファの最大サイズをバイト単位で指定します。この要素の値は、
値に係数が含まれていない場合は、 有効な値は、 デフォルト値は |
|
schemタイプにのみ適用されます。 |
|
バックアップ・データの保持に使用する記憶域のタイプを指定します。有効な値は次のとおりです。
デフォルト値は 事前構成されているオーバーライドは |
|
|
|
|
|
リース所有権の精度を指定します。リリース2.3以降で使用できます。有効な値は次のとおりです。
値が デフォルト値は |
|
この 通常、構成ファイル内ではこの値を未指定にしておき、システム・プロパティ 有効な値は、 事前構成されているオーバーライドは |
|
パーティション(分散)キャッシュを分割するパーティションの数を指定します。パーティション・キャッシュ・サービスを実行し、local-storage( パーティションの数は素数とし、いずれのパーティションのサイズも50MBを超えることのないように十分なパーティション数を指定する必要があります。 次に、サービス記憶域サイズに応じた適切なデフォルト設定を示します。 service storage partition-count _______________ ______________ 100M 257 1G 509 10G 2039 50G 4093 100G 8191 最初の1,000個の素数のリストについては、次のサイトを参照してください。 有効値は正の整数です。デフォルト値は |
|
|
|
レスポンスが来るまでクライアントが待機する最大時間を指定します。この時間を超過すると、元のリクエストが破棄されます。リクエスト時間はクライアント側で測定されるもので、対応するサーバー・ノードに対して実行のためのリクエストが送信されてからの経過時間に次の時間を加えたものです。
この要素の値は、
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は0です。 |
|
タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。 注意: ポストされたタスクがまだ開始されていない場合は、ハングとみなされません。この属性は、スレッド・プールが使用されている( 有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。 |
|
タイムアウト可能なタスク(たとえば、 有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。 |
|
分散キャッシュ・サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。 有効な値は、正の整数またはゼロです。 デフォルト値は0です。事前構成されているオーバーライド値は 単にインメモリー・データを使用する(リードスルー、ライトスルーおよびライトビハインドを使用しない)シナリオまたは単純なアクセスを使用する(入力プロセッサや集計などを使用しない)シナリオでは、値を |
|
プライマリ・バケット分散のしきい値をキロバイト単位で指定します。分散キャッシュ・サービスに新しいノードが結合する場合、またはサービスのメンバーのいずれかの結合が解除される場合、残りのノードによって、バケット所有権の再分散タスクが実行されます。このプロセスでは、所有権情報とともに既存のデータの均衡化が再実行されます。このパラメータでは、データ転送通信で優先されるメッセージ・サイズを示します。この値を低く設定すると、分散プロセスの所要時間は長くなりますが、このアクティビティ実行中のネットワーク帯域幅の使用量は軽減されます。 有効な値は、ゼロより大きな整数です。 デフォルト値は512(0.5MB)です。事前構成されているオーバーライド値は |
ReplicatedCache services
の要素では、表A-51に記載されたパラメータがサポートされます。この設定は、coherence-cache-config.xml
ディスクリプタ内のreplicated-scheme
要素の一部として指定することもできます。
表A-51 ReplicatedCacheサービスのパラメータ
パラメータ名 | 値の説明 |
---|---|
|
リース所有権の精度を指定します。リリース2.3以降で使用できます。有効な値は次のとおりです。
値が デフォルト値は |
|
リースの問題を最新のロック・ホルダーに転送するかどうかを指定します。 有効な値は、 デフォルト値は |
|
標準的なリースの継続時間をミリ秒単位で指定します。リースがこのミリ秒数を超過すると、ロックは自動的に解放されます。期限切れが発生しないリースを指定するには、この値をゼロに設定します。この設定の目的は、スタック・スレッドを原因とするデッドロックまたはブロックが発生しないようにすることです。最長の予想ロック継続時間より高い(たとえば、トランザクション・タイムアウトより高い)値を設定する必要があります。また、packet-delivery/timeout-millisecondsの値より高い値を設定することをお薦めします。 有効な値は、桁数の多い正の数値またはゼロです。 デフォルト値は0です。 |
InvocationService
services
の要素では、表A-52に記載されたパラメータがサポートされます。この設定は、coherence-cache-config.xml
ディスクリプタ内のinvocation-scheme
要素の一部として指定することもできます。
表A-52 InvocationServiceのパラメータ
パラメータ名 | 値の説明 |
---|---|
|
タイムアウト可能なリクエスト(たとえば、
有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。 |
|
タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。注意: ポストされたタスクがまだ開始されていない場合は、ハングと見なされません。この属性は、スレッド・プールが使用されている( |
|
タイムアウト可能なタスク(たとえば、 有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。 |
|
起動サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。 有効な値は、正の整数またはゼロです。事前定義されているオーバーライド値は デフォルト値は0です。 単にインメモリー・データを使用する(リードスルー、ライトスルーおよびライトビハインドを使用しない)シナリオまたは単純なアクセスを使用する(入力プロセッサや集計などを使用しない)シナリオでは、値を |
ProxyService services
の要素では、表A-53に記載されたパラメータがサポートされます。この設定は、coherence-cache-config.xml
ディスクリプタ内のproxy-scheme
要素の一部として指定することもできます。
表A-53 ProxyServiceのパラメータ
パラメータ名 | 値の説明 |
---|---|
|
プロキシ・サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。 有効な値は、正の整数またはゼロです。 デフォルト値は0です。 プロキシ・サービス・スレッドは、アプリケーションのコールのかわりに操作を実行します。したがって、値は発生している同時操作と同じ数に設定します。 |
|
タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。 注意: ポストされたタスクがまだ開始されていない場合は、ハングとみなされません。この属性は、スレッド・プールが使用されている( 有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。 |
|
タイムアウト可能なタスク(たとえば、 有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。 |
使用場所: cluster-config
説明
外部シャットダウン・リクエストを受信したときにクラスタ・ノードで実行するアクションを指定します。外部シャットダウンには、UNIXのkillコマンドやWindowsおよびUNIXのCtrl-C
などがあります。
要素
表A-54は、shutdown-listener
要素で定義可能な要素について説明しています。
表A-54 shutdown-listenerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
外部JVMシャットダウンの際に実行するアクションの種類を指定します。有効な値は次のとおりです。
注意: 本番で使用する場合、外部シャットダウンに対する動作が目的どおりであることがテストで検証されている場合を除き、この値をnoneに設定することをお薦めします。デフォルト値はforceです。事前定義されているオーバーライド値は |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。
使用場所: well-known-addresses
要素
表A-55は、socket-address
要素で定義可能なサブ要素について説明しています。
表A-55 socket-addressのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
ソケットがリスニングまたは公開するIPアドレスを指定します。 注意: localhostをループバック・アドレスとして定義しているシステムではlocalhostの設定が機能しない場合があります。その場合は、マシンの名前または特定のIPアドレスを指定します。 |
< |
必須 |
ソケットがリスニングまたは公開するポートを指定します。有効な値は1から65535です。 |
使用場所: socket-providers、unicast-listener
説明
<socket-provider>
要素には、com.tangosol.net.SocketProvider
インタフェースを実装するソケットおよびチャンネル・ファクトリの構成情報を記述します。<unicast-listener>
要素内で構成されたソケット・プロバイダはTCMP用です。Coherence*Extend用のソケット・プロバイダは、キャッシュ構成ファイルの<tcp-acceptor>
要素および<tcp-initiator>
要素内で構成されます。
<socket-providers>
要素内で定義されるソケット・プロバイダは、ユニキャスト・リスナー構成(「unicast-listener」を参照)、個々のキャッシュ・スキーム定義(「socket-provider」を参照)、およびソケット・プロバイダを明示的に定義していないサービス用のデフォルト・ソケット・プロバイダ(「defaults」を参照)により、参照されます。
出荷状態で、次の事前定義ソケット・プロバイダ構成が含まれています。必要に応じて、オペレーション・オーバーライド・ファイルで追加のソケット・プロバイダを定義できます。
system
(デフォルト): システム・ソケット・プロバイダは、JVMのデフォルト・ソケット実装に基づいて、ソケット・インスタンスを返します。
tcp
: TCPソケット・プロバイダは、可能なかぎりTCPベースのソケットを生成するソケット・プロバイダです。このソケット・プロバイダは、TCPによってバッキングされるDatagramSocket
のインスタンスを作成します。well-known-addressと組み合せることによって、Coherence TCMPは、UDPを必要とせずに、TCPを介してすべて機能します。
注意: well-known-addressesなしでこのソケット・プロバイダを使用すると、すべてのユニキャスト通信にTCPが使用されます。マルチキャストは、グループベースの通信に使用されます。 |
ssl
: sslソケット・プロバイダは、SSLで保護されたソケットのみを生成するソケット・プロバイダです。TCPソケット・プロバイダと同様、これはSSL/TCPベースのDatagramSocketを含みます。TCPソケット・プロバイダとは異なり、マルチキャスト・ソケットはサポートされず、したがって、TCMPがこのプロバイダで機能するためには、well-known-addressesを有効にする必要があります。
基本構成により、信頼できるすべてのピアが単一のJKSキーストア内にあるピア信頼に基づいて、双方向のSSL接続を容易に構成できます。より詳細な構成を別のIDおよびトラスト・マネージャで定義し、CAベースの信頼の検証を可能にすることができます。
要素
表A-56は、socket-provider
要素で定義可能なサブ要素について説明しています。
表A-56 socket-providerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
JVMのデフォルトのソケットおよびチャンネル実装のインスタンスを作成するソケット・プロバイダを指定します。 |
|
オプション |
TCPベースのソケットおよびチャンネル実装を生成するソケット・プロバイダを指定します。 |
|
オプション |
SSLを使用するソケットおよびチャンネル実装を作成するソケット・プロバイダを指定します。 |
|
オプション |
|
使用場所: cluster-config
説明
socket-providers
要素には、ソケット・プロバイダ実装ごとの宣言データを記述します。Coherenceには、system、tcp、およびsslの事前定義ソケット・プロバイダが含まれています。
要素
表A-57は、socket-providers
要素で定義可能なサブ要素について説明しています。
表A-57 socket-providersのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
|
使用場所: socket-provider
説明
<ssl>
要素には、SSLを使用するソケットおよびチャンネル実装を作成するソケット・プロバイダの構成情報を記述します。SSLがユニキャスト・リスナー用に構成されている場合、リスナーはwell-known-addressesを使用して構成する必要があります。
要素
表A-58は、ssl
要素で定義可能な要素について説明しています。
表A-58 sslのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
SSLソケット・プロバイダによって作成されたソケットおよびチャンネル実装が使用するプロトコルの名前を指定します。デフォルト値は |
|
オプション |
セキュリティ・プロバイダ・インスタンスの構成を指定します。 |
|
オプション |
|
オプション |
アイデンティティ・マネージャ・インスタンスを初期化するための構成情報を指定します。 |
|
オプション |
トラスト・マネージャ・インスタンスを初期化するための構成情報を指定します。 |
|
|
オプション |
|
使用場所: cluster-config
説明
TCPリングを使用すると、クラスタ内の別のノードの停止を迅速に検出できます。これを有効にすると、そのクラスタ・ノードに、クラスタ全体に及ぶTCP接続のリングが1つ形成されます。クラスタ・ノードは、TCP接続を使用して1つのハートビート間隔内で別のノードの停止を検出できます(デフォルト値は1秒です。packet-delivery
の<heartbeat-milliseconds>
サブ要素を参照)。これを無効にすると、別のノードがUDPパケットへの応答を停止したことを非常に長い間隔で検出する方法に頼る必要があります(packet-delivery
の<timeout-milliseconds>
サブ要素を参照)。停止が検出されると、他のすべてのクラスタ・ノードに送信されます。
要素
表A-59は、tcp-ring-listener
要素で定義可能なサブ要素について説明しています。
表A-59 tcp-ring-listenerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
<enabled> |
オプション |
ノードの障害を迅速に検出するためにTCPリング・リスナーを有効にするかどうかを指定します。有効な値は、 |
< |
オプション |
クラスタ・メンバーをホストするマシンに接続できないことを決定するために使用するタイムアウトを指定します。マシンに接続できないメンバーを削除する必要があることを決定する前に、指定した回数の接続を試行できます。
この障害は 有効な値は、時間間隔を表す文字列です。タイムアウトを デフォルト値は |
|
オプション |
クラスタ・メンバーをホストするマシンが使用できなくなり、これらのクラスタ・メンバーを削除する必要があることを決定する前に試行する接続の回数を指定します。
デフォルト値は |
|
オプション |
TCP/IPサーバー・ソケットのバックログ・キューのサイズを指定します。有効値は正の整数です。 デフォルト値はOSに依存します。 |
< |
必須 |
TCPリング・リスナーの実行スレッドの優先度を指定します。有効な値は1から10です。デフォルト値は6です。 |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: packet-publisher
説明
traffic-jam
要素は、クライアント・スレッドでパケット・パブリッシャがパケットをエンキューしてネットワークに転送する速度を制御するために使用します。この制限を超えると、未処理のパケット数が指定された制限を下回るまで、任意のクライアント・スレッドは強制的に一時停止されます。パブリッシャのパケット転送速度を制限するには、flow-control
要素を参照してください。
チューニング
長すぎる制限または長すぎる一時停止を指定すると、パブリッシャはすべての保留パケットを送信して、送信すべきパケットがなくなる場合があります。理想的な値は、パブリッシャの実行する処理がなくならず、かつキューが制御できないほど大きくならないような値です。そのため、一時停止は非常に短く(10ミリ秒以下)、パケット数の制限は高く(5000超)保持することをお薦めします。Coherence 3.2以降は、この条件が検出されると警告が定期的にログに記録されます。
トラフィック・ジャムとフロー制御
flow-control
が有効な場合、traffic-jam
はPoint-to-Pointモードで動作し、受信側に大量の未処理のパケットがある場合にのみ送信がブロックされます。traffic-jam/maximum-packets
の値はこの値より大きく設定することをお薦めします(outstanding-packets
の<maximum-packets>
サブ要素を参照)。flow-control
が無効な場合、traffic-jam
では未処理のパケットがすべて考慮されます。
要素
表A-60は、traffic-jam
要素で定義可能なサブ要素について説明しています。
表A-60 traffic-jamのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
パブリッシャで容認される保留パケットの最大数を指定します。この数を超過すると、パブリッシャが詰まり、クライアント・リクエスト(ローカルにあるシステム以外のスレッド)の速度を落とす必要があると判断されます。ゼロは制限がないことを示します。このプロパティで再送信キューのサイズを制限することにより、予期しないメモリー不足状態のほとんどは発生しなくなります。デフォルト値は8192です。 |
< |
必須 |
パブリッシャが詰まったときに、メッセージの送信を試みるクライアント・スレッドをパブリッシャが一時停止する時間(ミリ秒)です。パブリッシャの詰まりが解消されるまでメッセージは送信されず、このプロパティで指定された期間中はスレッドの休止が繰り返されます。デフォルト値は10です。 |
使用場所: ssl
説明
<trust-manager>
要素には、javax.net.ssl.TrustManager
インスタンスを初期化するための構成情報を記述します。
トラスト・マネージャは、信頼の決定を行う際に使用されるトラスト・マテリアルを管理し、ピアが提示した資格証明を受け入れるかどうかを決定します。
有効なtrust-manager構成には、少なくとも1つの子要素が記述されます。
要素
表A-61は、trust-manager
要素で定義可能な要素について説明しています。
表A-61 trust-managerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
トラスト・マネージャによって使用されるアルゴリズムを指定します。デフォルト値は |
|
オプション |
セキュリティ・プロバイダ・インスタンスの構成を指定します。 |
オプション |
キー・ストア実装の構成を指定します。 |
使用場所: cluster-config
説明
ユニキャスト・リスナーの構成情報を指定します。この要素は、Point-to-Pointのクラスタ通信をリスニングするためにクラスタ・ノードでバインドするアドレスおよびポートを指定するために使用します。
アドレスの自動設定
デフォルトでは、Coherenceはjava.net.InetAddress.getLocalHost()
コールを使用して、バインドするIPアドレスの取得を試行します。複数のIPまたはNICを使用するマシンでは、アドレスを明示的に指定することもできます(<address>
サブ要素を参照)。また、指定したポートがすでに使用されている場合には、デフォルトで、バインドが成功するまでポート番号が自動的に増分されます(サブ要素<port>
および<auto>
を参照)。
マルチキャストフリーのクラスタ化
デフォルトでは、クラスタの形成時に他のノードを検出するためにマルチキャスト・プロトコルが使用されます。マルチキャスト・ネットワーキングが適さない場合、または環境内で使用できない場合には、well-known-addresses
機能を使用するとマルチキャスト・トラフィックを使用する必要がなくなります。マルチキャストを使用してクラスタを設定するのが困難な場合は、第43章「マルチキャスト接続テストの実行」を参照してください。
要素
表A-62は、unicast-listener
要素で定義可能なサブ要素について説明しています。
表A-62 unicast-listenerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
マルチキャスト・ブロードキャストのかわりにクラスタ検出プロトコルで使用されるwell-known-addresses(WKA)のリストを記述します。 |
|
< |
オプション |
各サーバー・マシンを一意に識別する識別子を指定します。指定しない場合、デフォルト値はデフォルトのネットワーク・インタフェースのアドレスから生成されます。各メンバーを別のマシンで稼働するメンバーによって確実にバックアップすることにより、クラスタ内の各マシンのマシンIDを、クラスタ・サービスのフェイルオーバーの計画に使用できます。 |
< |
必須 |
ソケットがリスニングまたは公開するIPアドレスを指定します。注意: localhostをループバック・アドレスとして定義しているシステムではlocalhostの設定が機能しない場合があります。その場合は、マシンの名前または特定のIPアドレスを指定します。また、デフォルトで、マルチキャスト・リスナーは、このアドレスによって定義されたインタフェースと同じインタフェースにバインドします。 デフォルト値は |
< |
必須 |
ソケットがリスニングまたは公開するポートを指定します。第2ポートは自動的に開かれ、次に使用可能なポートにデフォルト設定されます。有効な値は1 - 65535です。第1ポートのデフォルト値は |
< |
必須 |
指定したポートがすでに使用されているためにバインドできない場合に、ユニキャスト・ポートを自動的に増分するかどうかを指定します。有効な値は、 |
必須 |
オペレーティング・システムがバッファリングを要求される受信パケットの量を指定します。この値はパケット数またはバイト数で表します。 |
|
< |
必須 |
ユニキャスト・リスナーの実行スレッドの優先度を指定します。有効な値は1から10です。デフォルト値は |
オプション |
<socket-provider>ssl</socket-provider> 事前定義されているオーバーライド値は |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
使用場所: packet-speaker
説明
スピーカー・デーモンの起動に必要な送信パケットの最小量を指定します。
パフォーマンスへの影響
パケットの負荷が比較的低い場合、スピーカーの操作をパブリッシャのスレッドで実行すると効率が向上することがあります。パケットの負荷が高い場合、スピーカーを使用すると、スピーカーによってネットワーク上でパケットを送信しながらパブリッシャはパケットの準備を続けることができます。
要素
表A-63は、packet-speaker
要素で定義可能な要素について説明しています。
表A-63 packet-speakerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
スピーカー・デーモンを起動するために送信の準備を整える必要のあるパケットの最小数を指定します。値を0に指定するとスピーカーが常に強制的に使用され、高い値を指定すると使用されなくなります。値を指定しないと、 |
使用場所: unicast-listener
注意: これは、セキュリティ関連の機能ではなく、クラスタに参加できるアドレスを制限するものではありません。クラスタ・メンバーシップの制限の詳細は、authorized-hosts要素を参照してください。Standard Editionでは、well-known-addresses(WKA)機能の使用はサポートされていません。マルチキャストを使用してクラスタを設定するのが困難な場合は、第43章「マルチキャスト接続テストの実行」を参照してください。 |
説明
デフォルトでは、クラスタの形成時に他のノードを検出するためにマルチキャスト・プロトコルが使用されます。マルチキャスト・ネットワーキングが適さない場合、または環境内で使用できない場合には、well-known-addresses機能を使用するとマルチキャスト・トラフィックを使用する必要がなくなります。使用中は、クラスタの開始が許可され、クラスタの存続期間を通して使用できる見込みのあるノードの比較的小さなリストでクラスタが構成されます。すべてのWKAノードが任意の時点で同時にアクティブである必要はありません。このリストは、マルチキャストを使用しないでクラスタの経路を見つけるために他のすべてのノードで使用され、他のノードが参加できるように既知のノードとして構成されているノードが少なくとも1つは稼働している必要があります。
例
例A-4は、デフォルトのポートがある2つのwell-known-addressesの構成を示しています。
例A-4 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>
要素
表A-64は、well-known-addresses
要素で定義可能なサブ要素について説明しています。
表A-64 well-known-addressesのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
マルチキャスト・ブロードキャストのかわりにクラスタ検出プロトコルで使用されるWKAのリストを指定します。1つ以上のWKAを指定した場合、メンバーがクラスタに参加するようにするには、そのメンバーがWKAになるか、または少なくとも1つのWKAメンバーが稼働している必要があります。また、すべてのクラスタ通信はユニキャストを使用して実行されます。空の場合または指定していない場合は、マルチキャスト通信が使用されます。事前構成されているオーバーライド値は、 |
|
オプション |
WKAを提供する |
内容のオーバーライド属性xml-override
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。
要素の内容をオーバーライドするには、オプションのid
属性およびxml-override
属性を使用できます。これらの属性は、次の要素の中に、独立して記述することもまとめて記述することもできます。
表A-65は、id
またはxml-override
、あるいはその両方を使用できる要素を示しています。
表A-66は、id
属性およびxml-override
属性の機能について説明しています。
表A-66 id属性およびxml-override属性の説明
属性 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドできるようにします。この属性の有効な値は、オーバーライド・ドキュメントのリソース名です。このリソース名は、 この属性で参照されるオーバーライドXMLドキュメントは、存在しなくてもかまいません。ただし、存在する場合は、そのルート要素の名前が、オーバーライドする要素の名前と同じである必要があります。名前の同じ要素が複数ある場合(例、< |
|
オプション |
名前の同じ要素が複数ある場合(例、< |