ヘッダーをスキップ
Oracle® Coherence開発者ガイド
リリース3.6.1
B61368-02
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

A オペレーション構成の要素

この章では、Oracle Coherenceで使用される操作設定および実行時の設定を制御する要素について説明します。これらの設定を使用して、Coherenceのクラスタ化、通信およびデータ管理サービスを作成、構成および維持します。また、これらの要素が含まれるデプロイメント・ディスクリプタ・ファイルについても説明します。

オペレーション構成デプロイメント・ディスクリプタ

クラスタ化、通信およびデータ管理サービスを作成および構成するために操作設定および実行時の設定を制御する要素は、次の2つのデプロイメント・ディスクリプタのいずれかで指定できます。

tangosol-coherence.xmlディスクリプタ。このディスクリプタでは、クラスタ化、通信およびデータ管理サービスを制御する操作要素および実行時要素を指定します。オプションのtangosol-coherence-override.xmlオーバーライド・ファイル。このファイルでは、調整するオペレーション・ディスクリプタのサブセットのみを指定します。詳細は、「オペレーション・オーバーライド・ファイル(tangosol-coherence-override.xml)」を参照してください。

キャッシュの構成の詳細は、付録B「キャッシュ構成の要素」を参照してください。

ドキュメントの場所

Coherenceをデプロイする場合に重要なことは、tangosol-coherence.xmlディスクリプタが存在し、それがアプリケーション・クラスパスに位置するようにすることです(他のリソースと同様に、Coherenceはクラスパスで最初に見つかったものを使用します)。(オラクル社のソフトウェア出荷時の)デフォルトでは、tangosol-coherence.xmlcoherence.jarにパッケージされています。

ドキュメント・ルート

オペレーション・ディスクリプタのルート要素は<coherence>です。クラスタおよびサービスはここで構成されます。

ドキュメントの形式

Coherenceオペレーション構成デプロイメント・ディスクリプタは、次のDOCTYPE宣言で開始する必要があります。

例A-1 オペレーション構成デプロイメント・ディスクリプタのDOCTYPE宣言

<!DOCTYPE coherence SYSTEM "coherence.dtd">

注意:

デフォルトのキャラクタ・セットがASCIIではなくEBCDICである環境にCoherenceをデプロイする場合、このディスクリプタ・ファイルがASCII形式であり、ランタイム環境にバイナリ形式でデプロイされることを確認してください。

オペレーション・オーバーライド・ファイル(tangosol-coherence-override.xml)

デフォルトのtangosol-coherence.xmlファイルに別の定義を指定することもできますが、オペレーション構成の最適なアプローチはオーバーライド・ファイルを指定することです。オーバーライド・ファイルには、調整するオペレーション・ディスクリプタのサブセットのみを記述します。オーバーライド・ファイルのデフォルト名はtangosol-coherence-override.xmlで、クラスパスで最初に見つかったインスタンスが使用されます。オーバーライド・ファイルの形式はオペレーション・ディスクリプタと同じですが、すべての要素はオプションであり、欠落している要素はオペレーション・ディスクリプタから簡単にロードされる点が異なります。

オーバーライド・ファイルを複数レベルに構成することもできます。これにより、ステージングと本番など、類似のデプロイメント環境間で追加のチューニングが可能になります。たとえば、この機能を使用して、デプロイメント・タイプ(評価、デプロイメント、本番)に基づいてロギングの詳細度などが異なる構成を提供できます。ロギングの詳細度の詳細は、「logging-config」の<severity-level>サブ要素を参照してください。また、coherence.jarの中のファイルtangosol-coherence-override-eval.xmltangosol-coherence-override-dev.xmlおよびtangosol-coherence-override-prod.xmlも参照してください。


注意:

カスタムのオペレーション・ディスクリプタでなくオーバーライド・ファイルを使用して、調整する設定のみを指定することをお薦めします。

コマンドラインのオーバーライド

Oracle Coherenceには非常に強力なコマンドライン・オーバーライド機能があり、このディスクリプタにsystem-property属性が定義されている場合は、ディスクリプタに定義された要素をJavaコマンドラインからオーバーライドできます。この機能により、すべてのクラスタ・ノードで同じオペレーション・ディスクリプタ(およびオーバーライド・ファイル)を使用し、システム・プロパティで各ノードをカスタマイズできます。この機能の詳細は、付録C「コマンドラインのオーバーライド」を参照してください。


要素の索引

表A-1には、オペレーション構成で使用可能なすべての非終端要素が一覧表示されています。

表A-1 オペレーション構成の非終端要素

要素 使用場所

access-controller


security-config


address-provider


well-known-addresses


authorized-hosts


cluster-config


cache-factory-builder-config


coherence


callback-handler


security-config


cluster-config


coherence


cluster-quorum-policy


cluster-config


coherence


ルート要素

configurable-cache-factory-config


coherence


filters


cluster-config


flow-control


packet-delivery


host-range


authorized-hosts


identity-asserter


security-config


identity-manager


ssl


identity-transformer


security-config


incoming-message-handler


cluster-config


init-param


init-params


init-params


access-controlleraddress-providercallback-handlerconfigurable-cache-factory-configfiltersservices

instance


socket-provider、service-failure-policy

key-store


identity-managertrust-manager

license-config


coherence


logging-config


coherence


management-config


coherence


mbean


mbeans


mbeans


management-config


mbean-filter


management-config


member-identity


cluster-config


multicast-listener


cluster-config


notification-queueing


packet-publisher


outgoing-message-handler


cluster-config


outstanding-packets


flow-control


packet-buffer


multicast-listenerpacket-publisherunicast-listener

packet-bundling


packet-delivery


packet-delivery


packet-publisher


packet-pool


incoming-message-handlerpacket-publisher

packet-publisher


cluster-config


packet-size


packet-publisher


packet-speaker


cluster-config


pause-detection


flow-control


provider


sslidentity-managertrust-manager

reporter


management-config


security-config


coherence


serializers


cluster-config


service-guardian


cluster-config


services


cluster-config


shutdown-listener


cluster-config


socket-address


well-known-addresses


socket-provider


socket-providersunicast-listener

socket-providers


cluster-config


ssl


socket-provider


tcp-ring-listener


cluster-config


traffic-jam


packet-publisher


trust-manager


ssl


unicast-listener


cluster-config


volume-threshold


packet-speaker


well-known-addresses


unicast-listener




access-controller

使用場所: security-config

表A-2は、access-controller要素で定義可能なサブ要素について説明しています。

表A-2 access-controllerのサブ要素

要素 必須/オプション 説明

<class-name>

必須

com.tangosol.net.security.AccessControllerインタフェースを実装するJavaクラスの名前を指定します。セキュリティ・フレームワークはこれを使用してクラスタ・リソースのアクセス権をチェックしたり、これらの権限に関するノード間の通信を暗号化または復号化します。詳細は、第30章「Coherenceの保護」を参照してください。デフォルト値はcom.tangosol.net.security.DefaultControllerです。

<init-params>

オプション

AccessControllerインタフェースを実装するクラスの初期化パラメータを1つ以上記述します。デフォルトのAccessController実装の場合、パラメータには次のように、キーストア・ファイルと権限記述ファイルへのパスを指定します。

<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>

デフォルトのAccessController実装およびデフォルトのパラメータに基づいて事前構成されるオーバーライド値は、前述のように、tangosol.coherence.security.keystoreおよびtangosol.coherence.security.permissionsになります。事前構成されているオーバーライドの詳細は、付録C「コマンドラインのオーバーライド」を参照してください。init-param要素で定義可能な要素の詳細は、「init-param」を参照してください。



address-provider

使用場所: well-known-addresses

説明

com.tangosol.net.AddressProviderインタフェースを実装するアドレス・ファクトリの構成情報を記述します。

要素

表A-3は、address-provider要素で定義可能なサブ要素について説明しています。

表A-3 address-providerのサブ要素

要素 必須/オプション 説明

<class-name>

オプション

com.tangosol.net.AddressProviderインタフェースを実装するクラスの完全修飾名を指定します。

この要素は、<class-factory-name>要素と一緒に使用することはできません。

<class-factory-name>

オプション

アドレス・プロバイダ・インスタンスを作成するための、ファクトリ・クラスの完全修飾名を指定します。インスタンスは、com.tangosol.net.AddressProviderインタフェースを実装する必要があります。

この要素は、<class-name>要素と一緒に使用することはできません。<method-name>要素と一緒に使用されます。

<method-name>

オプション

オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。

<init-params>

オプション

com.tangosol.run.xml.XmlConfigurableインタフェースをサポートする実装によってアクセス可能な初期化パラメータ、または一致するシグネチャを持つpublicなコンストラクタを記述する初期化パラメータを指定します。初期化パラメータは、<class-name>要素および<class-factory-name>要素の両方に指定できます。



authorized-hosts

使用場所: cluster-config

説明

これを指定すると、クラスタ・メンバーシップが、ユニキャスト・アドレスのコレクションまたはアドレス範囲で指定されたクラスタ・ノードに制限されます。ユニキャスト・アドレスは、認可されたクラスタ・ノードのunicast-listener要素のアドレス値です。任意の数のhost-address要素およびhost-range要素を指定できます。

要素

表A-4は、authorized-hosts要素で定義可能なサブ要素について説明しています。

表A-4 authorized-hostsのサブ要素

要素 必須/オプション 説明

<host-address>

オプション

IPアドレスまたはホスト名を指定します。これを指定すると、host-addressが指定されたホスト、または指定されたhost-range内のホストのみがクラスタに参加できます。内容のオーバーライド属性idを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。

<host-range>

オプション

IPアドレスの範囲を指定します。これを指定すると、host-addressが指定されたホスト、または指定されたhost-range内のホストのみがクラスタに参加できます。内容のオーバーライド属性idを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。

<host-filter>

オプション

新しいクラスタ・メンバーを受け入れるかどうかを判断するためクラスタによって使用されるcom.tangosol.util.Filter実装のクラス構成情報を指定します。evaluate()メソッドにクライアントのjava.net.InetAddressが渡されます。新しいメンバーのクラスタへの参加を許可するには、実装がtrueを返す必要があります。


内容のオーバーライド属性xml-overrideおよびidを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。「要素の属性」を参照してください。


cache-factory-builder-config

使用場所: 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のサブ要素

要素 必須/オプション 説明

<class-name>

必須

com.tagosol.net.CacheFactoryBuilderインタフェースを実装するJavaクラスの名前を指定します。デフォルト値はcom.tangosol.net.DefaultCacheFactoryBuilderです。

<init-params>

オプション

キャッシュ・ファクトリ・ビルダー実装の初期化パラメータを記述します。



callback-handler

使用場所: security-config

表A-6は、callback-handler要素で定義可能な要素について説明しています。

表A-6 callback-handlerのサブ要素

要素 必須/オプション 説明

<class-name>

必須

javax.security.auth.callback.CallbackHandlerインタフェースの実装を提供するJavaクラスの名前を指定します。

<init-params>

オプション

CallbackHandler実装の初期化パラメータを1つ以上記述します。



cluster-config

使用場所: <coherence>

説明

通信パラメータやサービス・パラメータなどのクラスタ構成情報を記述します。

要素

表A-7は、cluster-config要素で定義可能なサブ要素について説明しています。

表A-7 cluster-configのサブ要素

要素 必須/オプション 説明

<member-identity>

オプション

クラスタ・メンバーの位置とロールの定義に有用な、詳細な識別情報を指定します。

<unicast-listener>

必須

Point-to-Pointネットワーク通信の受信に使用するユニキャスト・リスナーの構成情報を指定します。

<multicast-listener>

必須

Point-to-Multipointネットワーク通信の受信に使用するマルチキャスト・リスナーの構成情報を指定します。

<tcp-ring-listener>

必須

停止検出に使用するTCPリング・リスナーの構成情報を指定します。

<shutdown-listener>

必須

外部シャットダウン・リクエストを受信したときに実行するアクションを指定します。

<service-guardian>

必須

サービスのデッドロックの検出と解決に使用されるサービス・ガーディアンの構成情報を指定します。

<packet-speaker>

必須

ネットワーク・データ転送に使用するパケット・スピーカーの構成情報を指定します。

<packet-publisher>

必須

ネットワーク・データ転送の管理に使用するパケット・パブリッシャの構成情報を指定します。

<incoming-message-handler>

必須

受信するクラスタ通信のディスパッチに使用する受信メッセージ・ハンドラの構成情報を指定します。

<outgoing-message-handler>

必須

送信するクラスタ通信のディスパッチに使用する送信メッセージ・ハンドラの構成情報を指定します。

<authorized-hosts>

オプション

クラスタに参加できるホストを指定します。

<services>

必須

使用可能なCoherenceサービスすべての宣言データを指定します。

<filters>

オプション

クラスタ・ノード間で転送されるデータに対するカスタム変換の実行に使用できるデータ変換フィルタを指定します。

<serializers>

オプション

com.tangosol.io.Serializerを実装する任意の数のシリアライザ・クラス構成を指定します。

<socket-providers>

必須

ソケット・プロバイダの定義を記述します。

<cluster-quorum-policy>

オプション

クラスタ・サービスのクォーラムベース・アクション・ポリシーの構成情報を記述します。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。


cluster-quorum-policy

使用場所: <cluster-config>

説明

cluster-quorum-policy要素には、クラスタ・サービス用のクォーラム・ポリシー設定を記述します。

要素

表A-8は、cluster-quorum-policy要素で定義可能なサブ要素について説明しています。

表A-8 cluster-quorum-policy-schemeのサブ要素

要素 必須/オプション 説明

<timeout-survivor-quorum>

オプション

根本原因に関係なく、ネットワークのタイムアウトの検出により1つ以上のクラスタ・メンバーを終了するために保持する必要のある、クラスタ・メンバーの最小数を指定します。(<role-name>要素で定義した)指定されたロールのクラスタ・メンバーのこの値を指定するには、role属性を使用します。例:

<timeout-survivor-quorum role="Server">50 </timeout-survivor-quorum>

この値は、負でない整数である必要があります。

<class-name>

オプション

カスタム・クォーラム・ポリシーを提供するクラスを指定します。この要素は、<timeout-survivor-quorum>要素または<class-factory-name>要素と一緒に使用することはできません。

クラスは、ccom.tangosol.net.ActionPolicyインタフェースを実装する必要があります。初期化パラメータは、<init-params>要素を使用して指定できます。

<class-factory-name>

オプション

カスタム・アクション・ポリシー・インスタンスを作成するためのファクトリ・クラスを指定します。この要素は、<timeout-survivor-quorum>要素または<class-name>要素と一緒に使用することはできません。

この要素は、<method-name>要素と一緒に使用されます。アクション・ポリシーは、com.tangosol.net.ActionPolicyインタフェースを実装する必要があります。さらに、初期化パラメータは、<init-params>要素を使用して指定できます。



coherence

ルート要素

説明

coherence要素は、オペレーション・デプロイメント・ディスクリプタtangosol-coherence.xmlのルート要素です。

要素

表A-9は、coherence要素で定義可能な要素について説明しています。

表A-9 coherenceのサブ要素

要素 必須/オプション 説明

<cluster-config>

必須

クラスタ構成情報を記述します。この要素では、ほとんどの通信およびサービスのパラメータを定義します。

<logging-config>

必須

ロギング機能の構成情報を記述します。

<configurable-cache-factory-config>

必須

構成可能なキャッシュ・ファクトリの構成情報を記述します。これにより、キャッシュ構成設定のロード元およびロード方法を制御します。

<cache-factory-builder-config>

必須

キャッシュ・ファクトリ・ビルダーの構成情報を記述します。これにより、複数のクラス・ローダーにわたり、複数のキャッシュ・ファクトリ構成の構築および管理が可能になります。

<management-config>

必須

Coherenceの管理フレームワークの構成情報を記述します。詳細は、第34章「JMXを使用したCoherenceの管理方法」を参照してください。

<security-config>

オプション

Coherenceのセキュリティ・フレームワークの構成情報を記述します。

<license-config>

オプション

エディションおよび操作モードの構成を記述します。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。


configurable-cache-factory-config

使用場所: 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のサブ要素

要素 必須/オプション 説明

<class-name>

必須

com.tangosol.net.ConfigurableCacheFactoryインタフェースを実装するJavaクラスの名前を指定します。デフォルト値はcom.tangosol.net.DefaultConfigurableCacheFactoryです。

<init-params>

オプション

キャッシュ構成ファクトリ実装の初期化パラメータを記述します。デフォルトのキャッシュ構成ファクトリ・クラスの場合、次のように1つのパラメータが使用されます。

<init-param>
  <param-type>java.lang.String</param-type>
  <param-value>coherence-cache-config.xml</param-value>
</init-param>

./path/to/config.xmlのような絶対パスまたは相対パスが指定されない場合、アプリケーションのクラスパスを使用して、指定されたディスクリプタを見つけます。事前構成されている値はtangosol.coherence.cacheconfigです。オーバーライドの詳細は、付録C「コマンドラインのオーバーライド」を参照してください。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。


filters

使用場所: cluster-config

説明

データ変換フィルタはservicesで使用され、クラスタ・ノード間で転送されるデータに対するカスタム変換に適用できます。これは、Coherenceのネットワーク・トラフィックを圧縮または暗号化するインスタンスに使用できます。詳細は、<filter-class>要素を参照してください。

実装

データ変換ファイルは、com.tangosol.util.WrapperStreamFactoryインタフェースの実装です。


注意:

データ変換ファイルは、com.tangosol.util.Filterには関係がなく、キャッシュの問合せに使用するCoherence APIの一部です。

要素

表A-11は、filters要素で定義可能な要素について説明しています。

表A-11 filtersのサブ要素

要素 必須/オプション 説明

<filter-name>

必須

フィルタの正規名を指定します。この名前はクラスタ内で一意です(例: gzip)。内容のオーバーライド属性idを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。

<filter-class>

必須

フィルタ実装のクラス名を指定します。このクラスには、パラメータがゼロのpublicなコンストラクタが必要であり、com.tangosol.util.WrapperStreamFactoryインタフェースを実装する必要があります。

<init-params>

オプション

com.tangosol.run.xml.XmlConfigurableインタフェースを実装するフィルタを構成するための初期化パラメータを指定します。たとえばcom.tangosol.net.CompressionFilterを使用する場合、パラメータは次のように指定します。

<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 圧縮フィルタのパラメータ

パラメータ名 値の説明

buffer-length

圧縮バッファ長をバイト単位で指定します。

有効な値は、正の整数またはゼロです。

デフォルト値は0です。

level

圧縮レベルを指定します。有効な値は次のとおりです。

  • default

  • compression

  • speed

  • none

デフォルト値はdefaultです。

strategy

圧縮方針を指定します。有効な値は次のとおりです。

  • gzip

  • huffman-only

  • filtered

  • default

デフォルト値はgzipです。



flow-control

使用場所: packet-delivery

説明

flow-control要素には、パケット速度の調整およびリモートGCの検出に関連する構成情報を記述します。

リモートGCの検出

Coherenceでリモート一時停止検出を使用すると、(GCが長いなどが原因で)応答のないクラスタ・ノードを検出し、それに対して反応できます。ノードが一時停止としてマークされた場合、そのノードを送信先とするパケットは、ノードが応答を再開するまでは、通常より遅い速度で送信されます。リモートGCの検出を使用すると、ノードが応答できない間にノードがあふれないようにできます。

パケット速度の調整

Coherenceでフロー制御を使用すると、Point-to-Pointの転送統計に基づき、特定のクラスタ・ノードに転送されるパケット速度を動的に調整できます。

要素

表A-13は、flow-control要素で定義可能な要素について説明しています。

表A-13 flow-controlのサブ要素

要素 必須/オプション 説明

<enabled>

オプション

フロー制御を有効にするかどうかを指定します。デフォルトはtrueです。

<pause-detection>

オプション

応答のないクラスタ・ノードに再送信するパケットの数を定義します。このパケット数を超過すると、そのノードは一時停止していると見なされます。

<outstanding-packets>

オプション

クラスタ・ノードに送信する未確認パケットの数を定義します。このパケット数を超過すると、そのノードを送信先とするパケットは遅延されます。



host-range

使用場所: authorized-hosts

説明

クラスタに参加できるノードのユニキャスト・アドレスの範囲を指定します。

要素

表A-14は、host-range要素で定義可能な要素について説明しています。

表A-14 host-rangeのサブ要素

要素 必須/オプション 説明

<from-address>

必須

ホスト・アドレスの範囲の開始IPアドレスを指定します(例: 198.168.1.1)。

<to-address>

必須

ホストの範囲の終了IPアドレスを指定します(例: 198.168.2.255)。


内容のオーバーライド属性idを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。


identity-asserter

使用場所: 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のサブ要素

要素 必須/オプション 説明

<class-name>

オプション

com.tangosol.net.security.IdentityAsserterを実装するクラスを指定します。この要素は、<class-factory-name>要素と一緒に使用することはできません。

<class-factory-name>

オプション

asserterインスタンスを作成するためのファクトリ・クラスを指定します。このインスタンスは、com.tangosol.net.security.IdentityAsserterを実装する必要があります。この要素は、<class-name>要素と一緒に使用することはできません。

この要素は、<method-name>要素と一緒に使用できます。

<method-name>

オプション

オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。

<init-params>

オプション

アサーション・プロバイダ実装のクラス初期化パラメータを記述します。



identity-manager

使用場所: ssl

説明

<identity-manager>要素には、javax.net.ssl.KeyManagerインスタンスを初期化するための構成情報を記述します。

アイデンティティ・マネージャは、そのピアへのローカル接続を認証するために使用されるキー・マテリアルの管理を行います。キー・マテリアルが使用できない場合、その接続で認証資格証明を提示することはできません。

要素

表A-16は、identity-manager要素で定義可能な要素について説明しています。

表A-16 identity-managerのサブ要素

要素 必須/オプション 説明

<algorithm>

オプション

アイデンティティ・マネージャによって使用されるアルゴリズムを指定します。デフォルト値はSunX509です。

<provider>

オプション

セキュリティ・プロバイダ・インスタンスの構成を指定します。

<key-store>

オプション

キー・ストア実装の構成を指定します。

<password>

必須

秘密鍵のパスワードを指定します。



identity-transformer

使用場所: 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のサブ要素

要素 必須/オプション 説明

<class-name>

オプション

com.tangosol.net.security.IdentityTransformerを実装するクラスを指定します。この要素は、<class-factory-name>要素と一緒に使用することはできません。

<class-factory-name>

オプション

asserterインスタンスを作成するためのファクトリ・クラスを指定します。このインスタンスは、com.tangosol.net.security.IdentityTransformerを実装する必要があります。この要素は、<class-name>要素と一緒に使用することはできません。

この要素は、<method-name>要素と一緒に使用できます。

<method-name>

オプション

オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。

<init-params>

オプション

トランスフォーマ実装のクラス初期化パラメータを記述します。



incoming-message-handler

使用場所: cluster-config

説明

incoming-message-handlerは、UDPパケットを論理メッセージにアセンブルして、それを適切なCoherenceサービスにディスパッチして処理させます。

要素

表A-18は、incoming-message-handler要素で定義可能なサブ要素について説明しています。

表A-18 incoming-message-handlerのサブ要素

要素 必須/オプション 説明

<maximum-time-variance>

必須

新しいクラスタ・メンバーのシステム時刻とクラスタ時刻との間の差異を測定する際に、ブロードキャスト・メッセージの送受信間の最大時刻差異を指定します。差異が小さいほど、クラスタ内で稼働する複数のシステム間でクラスタ時刻がより近いことが確実となります。ただし、クラスタに参加するプロセスは、指定された差異内でメッセージの交換が実行できるまで拡張されます。通常は、20ミリ秒程度の値で十分ですが、負荷の高いクラスタや複数のネットワーク・ホップでは、より大きな値が必要になる場合があります。デフォルト値は16です。

<use-nack-packets>

必須

パケットの受信側で否定応答(パケット・リクエスト)を使用して、欠落パケットを認識したときに積極的に応答するかどうかを指定します。詳細と構成は、「notification-queueing」を参照してください。有効な値は、trueまたはfalseです。デフォルト値はtrueです。

<priority>

必須

受信メッセージ・ハンドラの実行スレッドの優先度を指定します。有効な値は1から10です。デフォルト値は7です。

<packet-pool>

必須

Coherenceがバッファリングする受信パケットの数を指定します。この数を超過すると、受信パケットはブロックされます。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。


init-param

使用場所: init-params

説明

個別の初期化パラメータを定義します。

要素

表A-19は、init-param要素で定義可能な要素について説明しています。

表A-19 init-paramのサブ要素

要素 必須/オプション 説明

<param-name>

オプション

クラスに渡されるパラメータの名前を指定します。param-typeまたはparam-nameを指定する必要があります(例: thread-count)。特定の要素で使用可能な事前定義されたパラメータ値の詳細は、「初期化パラメータの設定」を参照してください。

<param-type>

オプション

クラスに渡されるパラメータのデータ型を指定します。param-typeまたはparam-nameを指定する必要があります(例: int)。

<param-value>

必須

パラメータで渡される値を指定します(例: 8)。特定の要素で使用可能な事前定義されたパラメータ値の詳細は、「初期化パラメータの設定」を参照してください。


内容のオーバーライド属性idを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。


init-params

使用場所: address-providerfiltersservicesconfigurable-cache-factory-configaccess-controllerおよびcallback-handler

説明

一連の初期化パラメータを定義します。

要素

表A-20は、init-param要素で定義可能な要素について説明しています。

表A-20 init-paramsのサブ要素

要素 必須/オプション 説明

<init-param>

オプション

個別の初期化パラメータを定義します。



instance

使用場所: socket-provider、service-failure-policy

説明

<instance>要素には、カスタム機能をプラグインするために使用される実装クラスまたはクラス・ファクトリの構成を記述します。

要素

表A-21は、instance要素で定義可能な要素について説明しています。

表A-21 instanceのサブ要素

要素 必須/オプション 説明

<class-name>

オプション

実装クラスの完全修飾名を指定します。

この要素は、<class-factory-name>要素と一緒に使用することはできません。

<class-factory-name>

オプション

実装クラス・インスタンスを作成するための、ファクトリ・クラスの完全修飾名を指定します。

この要素は、<class-name>要素と一緒に使用することはできません。<method-name>要素と一緒に使用されます。

<method-name>

オプション

オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。

<init-params>

オプション

実装クラスのクラス初期化パラメータを記述します。



key-store

使用場所: identity-managertrust-manager

説明

key-store要素は、SSLの実装時に使用するキー・ストア実装の構成を指定します。キー・ストア実装は、java.security.KeyStoreクラスのインスタンスです。

要素

表A-22は、key-store要素で定義可能な要素について説明しています。

表A-22 key-storeのサブ要素

要素 必須/オプション 説明

<url>

必須

キー・ストアへのUniform Resource Locator(URL)を指定します。

<password>

オプション

キャッシュ・ストアのパスワードを指定します。

<type>

オプション

java.security.KeyStoreインスタンスのタイプを指定します。デフォルト値はJKSです。



license-config

使用場所: coherence

表A-23は、license-config要素で定義可能な要素について説明しています。

表A-23 license-configのサブ要素

要素 必須/オプション 説明

<edition-name>

オプション

メンバーが使用する製品のエディションを指定します。この方法では、使用するエディションをメンバーごとに指定することで、同じクラスタの中で複数の製品エディションを使用できます。有効な値は、GE(Grid Edition)、EE(Enterprise Edition)、SE(Standard Edition)、RTC(Real-Time Client)、DC(Data Client)です。デフォルト値はGEです。

<license-mode>

オプション

製品を開発モードと本番モードのいずれで使用するかを指定します。有効な値は、prod(本番)とdev(開発)です。注意: この値は、tangosol-coherence-override.xmlでオーバーライドできません。これは、tangosol-coherence.xmlで指定するか、またはJavaコマンドラインでシステム・プロパティtangosol.coherence.modeとして指定する必要があります(後者を推奨)。デフォルト値はdevです。



logging-config

使用場所: coherence

要素

次の表は、logging-config要素で定義可能な要素について説明しています。

表A-24 logging-configのサブ要素

要素 必須/オプション 説明

<destination>

必須

ロギング・システムで使用する出力デバイスを指定します。有効な値は次のとおりです。

  • stdout

  • stderr(デフォルト)

  • jdk

  • log4j

  • ファイル名

jdkが出力先として指定されている場合、CoherenceはJDK 1.5以降を使用して実行する必要があります。log4jが指定されている場合、Log4jライブラリがクラスパスに存在する必要があります。どちらの場合でも、適切なロギング構成メカニズム(システム・プロパティやプロパティ・ファイルなど)がJDK/Log4jロギング・ライブラリの構成に必要です。事前定義されているオーバーライド値はtangosol.coherence.logです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<logger-name>

オプション

Coherence関連のメッセージの記録に使用するよう選択されたロギング・システム内でのロガー名を指定します。この値は、JDKおよびlog4jロギング・システムでのみ使用されます。

デフォルト値はCoherenceです。

事前定義されているオーバーライド値はtangosol.coherence.log.loggerです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<severity-level>

必須

どのログ・メッセージをログ出力先に出力するかを指定します。有効な値は次のとおりです。

  • 0: ロギング重大度レベルが指定されていない出力のみがログに記録されます

  • 1: 前述のすべてとエラー

  • 2: 前述のすべてと警告

  • 3: 前述のすべてと情報メッセージ

  • 4-9: 前述のすべてと内部デバッグ・メッセージ(数字が大きいほどメッセージが多くなります)

  • -1: メッセージなし

デフォルト値は3です。事前定義されているオーバーライド値はtangosol.coherence.log.levelです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<message-format>

必須

ログ出力先に渡す前に、ロギング・レベルが指定されたメッセージをフォーマットする方法を指定します。message-format要素の値は、次の置換可能なパラメータを含む静的テキストです。

  • {date}: メッセージがログに記録された日付/時刻書式(ミリ秒まで)

  • {version}: Oracle Coherenceの正確なバージョンおよびビルドの詳細

  • {level}: メッセージのロギング重大度レベル

  • {thread}: メッセージをログに記録したスレッド名

  • {member}: クラスタ・メンバーID(クラスタが現在実行中の場合)

  • {location}: 完全修飾クラスタ・メンバーID: cluster-name、site-name、rack-name、machine-name、process-nameおよびmember-name(クラスタが現在実行中の場合)

  • {role}: クラスタ・メンバーの指定されたロール

  • {text}: メッセージのテキスト

デフォルト値は次のとおりです。

{date} Oracle Coherence {version} <{level}> (thread={thread}, member={member}): {text}

<character-limit>

必須

ログ出力デーモンがメッセージ・キューから処理する文字の最大数を指定します。この数を超過すると、キューに残っているメッセージがすべて破棄されます。合計文字数がこの最大数を超えたメッセージは、切り捨てられません。また、破棄されるすべてのメッセージはロギング・システムでまとめられて、破棄されたメッセージの数およびその合計サイズの詳細を記録した単一のログ・エントリが出力されます。キューが処理されると(空になると)後続のメッセージをログに記録できるようにログ出力がリセットされるため、ロギングの切捨ては一時的なものに限定されます。

この設定の目的は、ロギング自体で失敗の状態からのリカバリができない状況を回避することです。たとえば、タイミングが密接していると、ロギングにより実際のタイミングが変わる場合があり、それにより失敗が多く発生しロギングも増加して、悪循環に陥る可能性があります。任意の時点で実行されるロギングの制限となるものは、そのような悪循環の発生を防ぐ圧力弁です。システムの重要な部分への影響をさらに軽減するために、ロギングは優先度の低い専用のスレッドで実行されます。

有効な値は、正の整数またはゼロです。ゼロは制限がないことを示します。

製品モードのデフォルト値は4096、開発モードのデフォルト値は2147483647です。事前構成されているオーバーライド値はtangosol.coherence.log.limitです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。


management-config

使用場所: coherence

要素

表A-25は、management-config要素で定義可能な要素について説明しています。

表A-25 management-configのサブ要素

要素 オプション/必須 説明

<managed-nodes>

必須

クラスタ・ノードのJVMに[in-process] MBeanサーバーを設定するかどうか、また設定する場合は、そのノードに他ノードの管理オブジェクトの管理を許可するかどうかを指定します。有効な値は次のとおりです。

  • none: MBeanサーバーはインスタンス化されません。

  • local-only: そのクラスタ・ノードにローカルな(つまり、同じJVM内の)MBeanのみを管理します。

  • remote-only: リモートで管理できる他のクラスタ・ノードのMBeanを管理します。<allowed-remote-management>サブ要素を参照してください。Coherence Enterprise Edition以降が必要です

  • all: ローカルとリモートの両方で管理できるクラスタ・ノードを管理します。<allowed-remote-management>サブ要素を参照してください。Coherence Enterprise Edition以降が必要です

デフォルト値はnoneです。事前構成されているオーバーライド値はtangosol.coherence.managementです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<allow-remote-management>

必須

このクラスタ・ノードで、管理オブジェクトをリモートのMBeanサーバーに公開するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はtrueです。事前構成されているオーバーライド値はtangosol.coherence.management.remoteです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<refresh-policy>

オプション

リモート管理情報のリフレッシュに使用されるメソッドを指定します。

有効な値は、refresh-aheadrefresh-behindまたはrefresh-expiredです。

デフォルト値はrefresh-aheadです。

事前構成されているオーバーライド値はtangosol.coherence.management.refresh.policyです。

<refresh-expiry>

オプション

管理ノードでリモートのMBean情報が無効化されるまでの時間間隔(ミリ秒単位)を指定します。

有効な値は、時間間隔を表す文字列です。

デフォルト値は1sです。

事前構成されているオーバーライド値はtangosol.coherence.management.refresh.expiryです。

<refresh-timeout>

オプション

MBean情報のリフレッシュ時に管理ノードがリモート・ノードからのレスポンスを待つ期間を指定します。この値はrefresh-expiryの間隔より小さくする必要があります。

有効な値は、時間間隔を表す文字列です。

デフォルト値は250msです。

事前構成されているオーバーライド値はtangosol.coherence.management.refresh.timeoutです。

<read-only>

オプション

このクラスタ・ノードで公開された管理オブジェクトに、実行時属性の変更操作を許可するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。事前構成されているオーバーライド値はtangosol.coherence.management.readonlyです。付録C「コマンドラインのオーバーライド」を参照してください。

<default-domain-name>

オプション

Coherence管理フレームワークにより公開されるMBeanを登録するために使用されるMBeanサーバーのデフォルトのドメイン名を指定します。この値は、インプロセスMBeanサーバーを持ち、ローカルまたはその他のノードの管理オブジェクトの管理を可能にするクラスタ・ノードによってのみ使用されます。この値が指定されていない場合、最初に存在したMBeanサーバーが使用されます。

この要素は、MBeanServerFinderインタフェースの実装時にも使用されます。後述の<service-factory>要素を参照してください。

<service-name>

オプション

リモート管理に使用する起動サービスの名前を指定します。この要素は、allow-remote-managementtrueに設定されている場合にのみ使用されます。

<service-factory>

オプション

com.tangosol.net.management.MBeanServerFinderインタフェースを実装するMBeanServerファクトリの構成情報を記述します。これは、新しいMBeanの登録および既存のMBeanの検索のためCoherence JMXフレームワークによって使用されるMbeanサーバーを見つけるために使用されます。クラス名は、<class-name>サブ要素を使用して入力され、<init-params>要素を使用して初期化パラメータをサポートします。

<mbeans>

オプション

ノードがクラスタに参加するときに登録されるMBeanのリストを記述します。

<mbean-filter>

オプション

登録前にMBeanをフィルタ処理するために使用されるフィルタ・クラスの構成情報を記述します。

<reporter>

オプション

Reporterの構成を記述します。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。


mbean

使用場所: mbeans

説明

mbean要素には、Coherence Managementインフラストラクチャでインスタンス化および登録される要素のリストを記述します。

要素

表A-26は、mbean要素で定義可能なサブ要素について説明しています。

表A-26 mbeanのサブ要素

要素 必須/オプション 説明

<mbean-class>

オプション

Coherence管理フレームワークでインスタンス化および登録する標準MBeanのフル・クラス名を指定します。正しくインスタンス化するには、クラスパスにMBeanクラスを指定する必要があります。

この要素は、<mbean-factory>要素または<mbean-query>要素と一緒に使用することはできません。

<mbean-factory>

オプション

Coherence管理フレームワークに登録するMBeanを取得するために使用するクラス・ファクトリの名前を指定します。正しくインスタンス化するには、クラスパスにファクトリ・クラスを指定する必要があります。この要素は、<mbean-accessor>要素と一緒に使用されます。

この要素は、<mbean-class>要素または<mbean-query>要素と一緒に使用することはできません。

<mbean-query>

オプション

JMX ObjectName問合せパターンを指定します。問合せパターンはローカルのMBeanサーバーに対して実行され、生成されたオブジェクトはCoherence管理フレームワークに登録されます。これにより、グリッドに対してMBeanのシングル・ポイント統合が可能になります。たとえば次の問合せには、Coherence Managementインフラストラクチャのjava.langドメインにすべてのMBeanが含まれます。

<mbean-query>java.lang:*</mbean-query>

この要素は、<mbean-class>要素または<mbean-factory>要素と一緒に使用することはできません。

<mbean-accessor>

オプション

MBeanのインスタンス化に使用されるファクトリ・クラス(<mbean-factory>要素により指定)のメソッド名を指定します。

<mbean-name>

必須

Coherence管理フレームワークに登録するMBeanのJMX ObjectName接頭辞を指定します。接頭辞は、カンマで区切られたKey=Valueのペアとします。CoherenceのMBeanのネーミング規則には、名前は型/値のペア(たとえば、type=Platform)で始まる必要があると規定されています。

<local-only>

オプション

MBeanをクラスタ全体で参照可能にするかどうかを指定します。有効な値は、trueまたはfalseです。trueに設定されていると、MBeanはローカルのMBeanServerにのみ登録され、他のクラスタ・ノードからはアクセスできません。falseに設定されていると、nodeId=...キー属性がその名前に追加され、MBeanが任意の管理ノード(<managed-nodes>要素がallまたはremote-onlyの値に設定されているノード)から参照できます。

デフォルト値はfalseです。

<enabled>

オプション

このインスタンスでMBeanをインスタンス化および登録するかどうかを指定します。有効な値は、trueまたはfalseです。

デフォルト値はfalseです。

<extend-lifecycle>

オプション

MBeanがノード接続のライフ・サイクルを超えるかどうかを指定します。有効な値は、trueまたはfalseです。trueの場合、MBeanは複数回の接続にわたって統計および値を保持します(JVMのライフ・サイクルと一致します)。falseの場合、MBeanは破棄され、グリッドからノードの接続が切断されたときに再作成されます。

デフォルト値はfalseです。



mbeans

使用場所: management-config

説明

mbeans要素は、カスタムMBeanを定義するためのルート要素で、通常、カスタムMBean構成ファイルのルート要素です。これには、Coherence管理フレームワークでインスタンス化および登録されるmbean要素のリストを記述します。

要素

表A-27は、mbeans要素で定義可能な要素について説明しています。

表A-27 mbeansのサブ要素

要素 必須/オプション 説明

<mbean>

必須

Coherence管理フレームワークでインスタンス化および登録されるMBeanのタイプ、実装およびObjectNameを指定します。



mbean-filter

使用場所: 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のサブ要素

要素 必須/オプション 説明

<class-name>

オプション

MBeanをフィルタ処理するためのフィルタ・クラスの名前を指定します。

この要素は、<class-factory-name>要素と一緒に使用することはできません。

<class-factory-name>

オプション

フィルタ・インスタンスを作成するためのファクトリ・クラスを指定します。

この要素は、<name>要素または<class-name>要素と一緒に使用することはできません。

この要素は、<method-name>要素と一緒に使用できます。

<method-name>

オプション

オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。

<init-params>

オプション

フィルタ実装のクラス初期化パラメータを記述します。



member-identity

使用場所: cluster-config

member-identity要素には、クラスタ・メンバーの位置とロールの定義に有用な、詳細な識別情報を記述します。

要素

表A-29は、member-identity要素で定義可能な要素について説明しています。

表A-29 member-identityのサブ要素

要素 必須/オプション 説明

<cluster-name>

オプション

cluster-name要素には、クラスタの名前を記述します。クラスタに参加するには、すべてのメンバーで同じクラスタ名を指定する必要があります。本番システムではcluster-nameを指定して、アプリケーション間の不慮のクラスタ検出を回避することを強くお薦めします。事前定義されているオーバーライド値はtangosol.coherence.clusterです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<site-name>

オプション

site-name要素には、メンバーがホストされる地理上のサイトの名前を記述します。WANによるクラスタ化では、メンバーが配置されるデータセンターをこの値で特定します。またこの値は、高度なルーティング、ロード・バランシングおよび障害時リカバリ計画(別の地理上のサイトにあるデータの明示的なバックアップ)の基盤として使用できます。この名前は、管理情報(例、JMX)の表示およびログ・エントリの解釈にも有用です。この要素は現在、データ・バックアップの場所を決定するためには使用されていません。事前定義されているオーバーライド値はtangosol.coherence.siteです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<rack-name>

オプション

rack-name要素には、メンバーがホストされる地理上のサイト内にある場所の名前を記述します。この値は多くの場合、ケージ、ラックまたはブレードフレームの識別子であり、高度なルーティング、ロード・バランシングおよび障害時リカバリ計画(別のブレードフレームにあるデータの明示的なバックアップ)の基盤として使用できます。この名前は、管理情報(例、JMX)の表示およびログ・エントリの解釈にも有用です。この要素は現在、データ・バックアップの場所を決定するためには使用されていません。事前定義されているオーバーライド値はtangosol.coherence.rackです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<machine-name>

オプション

machine-name要素には、メンバーがホストされる物理サーバーの名前を記述します。多くの場合、サーバーの識別子自体と同じ名前を指定します(たとえば、HOSTNAMEやDNSエントリに表示される名前)。machine-nameを指定した場合、これはmachine-idを作成する際の基盤として使用されます。さらにmachine-idを使用することにより、データが様々な物理マシンにバックアップされることが保証され、シングル・ポイント障害(SPOF)が回避されます。この名前は、管理情報(例、JMX)の表示およびログ・エントリの解釈にも有用です。この要素に値を指定するかどうかはオプションです。ただし、名前は常に指定することを強くお薦めします。事前定義されているオーバーライド値はtangosol.coherence.machineです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<process-name>

オプション

process-name要素には、メンバーがホストされるプロセス(JVM)の名前を記述します。この名前を使用すると、同じマシンで稼働する複数のJVMを容易に区別できます。この名前は、管理情報(例、JMX)の表示およびログ・エントリの解釈にも有用です。この要素に値を指定するかどうかはオプションです。多くの場合、JVM当たりに存在するメンバーは1つのみであるため、この名前は冗長になります。事前定義されているオーバーライド値はtangosol.coherence.processです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<member-name>

オプション

member-name要素には、メンバー自身の名前を記述します。この名前を使用すると、同じマシン(さらには同じJVM)で複数のメンバーが稼働している場合などに、メンバー同士を容易に区別できます。この名前は、管理情報(例、JMX)の表示およびログ・エントリの解釈にも有用です。この要素に値を指定するかどうかはオプションです。ただし、名前は常に指定することを強くお薦めします。事前構成されているオーバーライド値はtangosol.coherence.memberです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<role-name>

オプション

role-name要素には、メンバー・ロールを記述します。この名前を使用すると、アプリケーションでメンバーを、キャッシュ・サーバーやキャッシュ・クライアントなどの専門のロールに整理できます。この名前は、管理情報(例、JMX)の表示およびログ・エントリの解釈にも有用です。この要素に値を指定するかどうかはオプションです。ただし、名前は常に指定することを強くお薦めします。事前定義されているオーバーライド値はtangosol.coherence.roleです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<priority>

オプション

priority要素は、対応するメンバーの優先度を指定します。優先度は、メンバー間の優劣を決定する基準に使用されます。2つのメンバーのいずれかをクラスタから排除する状況が発生した場合、まれなケースですが 2つのいずれに障害があって排除すべきかを客観的に判断できないときは、優先度の低いメンバーが排除されます。有効な値は1から10です。事前構成されているオーバーライド値はtangosol.coherence.priorityです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。



message-pool

使用場所: 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のサブ要素

要素 必須/オプション 説明

<segments>

オプション

バッファを格納するためにメッセージ・プールが使用するセグメント数を指定します。各セグメントが特定のサイズのバッファを格納します。セグメント間のバッファ・サイズの違いは、<growth-factor>要素の値を使用して計算されます。

デフォルト値は4です。

<segment-size>

オプション

単一のプール・セグメントの最大サイズを指定します。プール全体の最大サイズは、セグメント総数とセグメントの最大サイズを掛けたものです。

デフォルト値は16MBです。

<min-buffer-size>

オプション

セグメントに格納できる最小バッファ・サイズを指定します。この値は、1024の倍数である必要があります。したがって、可能な最小バッファは1024バイトとなります。

デフォルト値は1KBです。

<growth-factor>

オプション

連続するセグメント間の成長率を(ビット単位の左シフトとして)指定します。

デフォルト値は2です。



multicast-listener

使用場所: cluster-config

説明

マルチキャスト・リスナーの構成情報を指定します。この要素は、クラスタがクラスタ全体およびPoint-to-Multipoint通信に使用するアドレス(<address>サブ要素を参照)およびポート(<port>サブ要素を参照)を指定するために使用します。クラスタ内のノードはすべて、同じマルチキャスト・アドレスおよびポートを使用する必要があります。同じネットワークの別のクラスタは、別のマルチキャスト・アドレスを使用する必要があります。

マルチキャストフリーのクラスタ化

デフォルトでは、クラスタの形成時に他のノードを検出するためにマルチキャスト・プロトコルが使用されます。マルチキャスト・ネットワーキングが適さない場合、または環境内で使用できない場合には、well-known-addresses機能を使用するとマルチキャスト・トラフィックを使用する必要がなくなります。マルチキャストを使用してクラスタを設定するのが困難な場合は、第43章「マルチキャスト接続テストの実行」を参照してください。

要素

表A-31は、multicast-listener要素で定義可能な要素について説明しています。

表A-31 multicast-listenerのサブ要素

要素 必須/オプション 説明

<address>

必須

ソケットがリスニングまたは公開するマルチキャストIPアドレスを指定します。有効な値は224.0.0.0から239.255.255.255です。デフォルト値は、リリースおよびビルド・レベルによって異なり、一般的に{build}.{major version}.{minor version}.{patch}という表記規則に従います。たとえば、Coherenceリリース2.2ビルド255では225.2.2.0となります。事前構成されている値はtangosol.coherence.clusteraddressです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<port>

必須

ソケットがリスニングまたは公開するポートを指定します。有効な値は1から65535です。デフォルト値は、リリースおよびビルド・レベルによって異なり、一般的に{version}+{{{build}という表記規則に従います。たとえば、Coherenceリリース2.2ビルド255では22255となります。事前構成されているオーバーライド値はtangosol.coherence.clusterportです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<interface>

オプション

マルチキャスト・ソケットがバインドされるIPアドレスを指定します。デフォルトでは、マルチキャスト・ソケットにはunicast-listenerのIPアドレスのインタフェース(NIC)が使用されます。このオプションにより、インタフェースを指定できます。このアドレスを0.0.0.0に設定すると、OSはユニキャスト・ルーティング表を使用して、自動的にインタフェースを選択できます。

警告: まれな例外を除いて、この特定のオプションは使用しないことを強くお薦めします。これは、部分障害と呼ばれる状態に陥る可能性があります。部分障害は、一部のクラスタ通信は機能しているが、その他のクラスタ通信に障害がある場合に発生します。このオプションを使用すると、マルチキャスト・トラフィックに使用されるインタフェース(およびそれに伴うネットワーク)が、ユニキャスト(UDP/IP)およびTCPリング(TCP/IP)トラフィックに使用されるインタフェース(およびそれに伴うネットワーク)と異なる可能性があるため、部分障害が発生することがあります。1つのインタフェース(またはネットワーク)に障害が発生すると、一部の通信は引き続き正常に行われますが、その他の通信は失敗します。これにより、フェイルオーバーが長時間発生する場合があります。クラスタ化では、ノード(およびそれに伴うインタフェース)の障害を処理するため、すべての通信が一緒に失敗することが望ましいので、このオプションは使用しないことを強くお薦めします。

<time-to-live>

必須

マルチキャストの有効時間設定を指定します。これにより、パケットが横断するホップの最大数を決定します。ホップは、あるネットワーク・セグメントから別のネットワーク・セグメントへの、ルーターを使用した横断として測定されます。有効な値は0から255です。

デフォルト値は4です。事前構成されているオーバーライド値はtangosol.coherence.ttlです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<packet-buffer>

必須

オペレーティング・システムがバッファリングを要求される受信パケットの量を指定します。この値はパケット数またはバイト数で表します。

<priority>

必須

マルチキャスト・リスナーの実行スレッドの優先度を指定します。有効な値は1から10です。デフォルト値は8です。

<join-timeout-milliseconds>

必須

新しいメンバーがクラスタの形跡を見つけないで待機する時間を指定します(ミリ秒単位)。この時間を超過すると、自身のクラスタが開始され、上位クラスタ・メンバーに自身が昇格されます。有効な値は1から1000000です。

注意: 本番で使用する場合、推奨値は30000です。デフォルト値は6000です。

<multicast-threshold-percent>

必須

パケットをユニキャストとマルチキャストのいずれで送信するかを決定する際に使用するしきい値(%)を指定します。この割合は1 - 100%で指定します。n個のノードで構成されるクラスタにおいて、特定のノードが他の送信先ノードのセット(送信者自身を除く)のサイズをdとすると(dは0からn-1)、次の両方とも当てはまる場合にのみ、パケットはマルチキャストで送信されます。

  1. パケットがネットワークを介して他の複数のノードに送信される(d > 1)。

  2. ノード数がしきい値より大きい(d > (n-1) * (しきい値/100))。

    この値を1に設定すると、実装は基本的にすべてのマルチポイント・トラフィックでマルチキャストを使用できます。

    この値を100に設定すると、100%を超えるしきい値はないため、明示的なブロードキャスト・トラフィック(クラスタ・ハートビートやクラスタ検出など)を除いて、実装はすべてのマルチポイント・トラフィックでユニキャストを使用することになります。この値を25に設定すると、送信先が全ノードの4分の1未満の場合は、パケットはユニキャストを使用して送信され、4分の1以上の場合はマルチキャストを使用して送信されます。

注意: この要素はwell-known-addresses要素が空の場合にのみ使用されます。有効値は1から100です。デフォルト値は25です。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。


notification-queueing

使用場所: 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-delay- milliseconds>

必須

パケット・パブリッシャの最大遅延時間を指定します(ミリ秒単位)。この時間を超過すると、ACKパケットが送信されます。ACKパケットは、バッチ化された肯定応答数がACKパケットを満たした場合に、早期に送信されることがあります。この値はリモート・ノードのpacket-deliveryの再送信タイムアウトより十分小さくして、リモート・ノードでACKを受信および処理するのに十分な時間を与える必要があります。この値を超過すると、再送信タイムアウトに達します。デフォルト値は16です。

<nack-delay- milliseconds>

必須

パケット・パブリッシャの遅延時間を指定します(ミリ秒単位)。この時間を超過すると、NACKパケットが送信されます。デフォルト値は1です。



outgoing-message-handler

使用場所: cluster-config

説明

outgoing-message-handler要素には、送信メッセージ・ハンドラ(ディスパッチャとも呼ばれる)関連の構成情報を記述します。

要素

表A-33は、outgoing-message-handler要素で定義可能な要素について説明しています。

表A-33 outgoing-message-handlerのサブ要素

要素 必須/オプション 説明

<use-filters>

オプション

このハンドラにより使用される<filter-name>要素のリストを指定します。フィルタ定義の詳細は、<filters>要素を参照してください。

<message-pool>

オプション

メッセージ・バッファ・プールのサイズを指定します。



outstanding-packets

使用場所: flow-control

説明

クラスタ・ノードに送信する未確認パケットの数を定義します。このパケット数を超過すると、そのノードを送信先とするパケットは遅延されます。これにより、送信側が原因で受信側のネットワーク・バッファがオーバーフローすることがなくなります。

自動チューニング

この値は、maximum-packets要素を使用して数値を明示的に指定するか、またはmaximum-packets要素とminimum-packets要素の両方を使用して範囲として指定する必要があります。範囲を指定する場合、この設定はネットワーク統計に基づいて動的に調整されます。

要素

表A-34は、outstanding-packets要素で定義可能な要素について説明しています。

表A-34 outstanding-packetsのサブ要素

要素 必須/オプション 説明

<maximum-packets>

オプション

クラスタ・ノードに送信する未確認パケットの最大数です。このパケット数を超過すると、そのノードを送信先とするパケットは遅延されます。この値を256未満に設定しないことをお薦めします。デフォルト値は4096です。

<minimum-packets>

オプション

クラスタ・ノードに送信する未確認パケット数の範囲の下限です。このパケット数を超過すると、そのノードを送信先とするパケットは遅延されます。この値を16未満に設定しないことをお薦めします。デフォルト値は64です。



packet-buffer

使用場所: unicast-listenermulticast-listenerpacket-publisher

説明

データグラム・ソケットに使用するオペレーティング・システムのバッファのサイズを指定します(パケットまたはバイト単位)。

パフォーマンスへの影響

インバウンド・バッファを大きく指定すると、Coherenceネットワーク層が、Javaガベージ・コレクタを原因とするJVMの一時停止から保護されます。JVMの一時停止中は、Coherenceは任意のインバウンド・ソケットからパケットをデキューできません。一時停止時間がパケット・バッファのオーバーフローを引き起こすほど長いと、発信元ノードがパケット消失を検出してパケットを再送信する必要があるため、パケットの受信が遅延します。

単なるヒント

オペレーティング・システムは指定された値をヒントとして扱うのみで、その値を割り当てる義務はありません。小さい領域しか割り当てられない場合、要求されたCoherenceは警告を発行して、制限されたバッファで操作を続行することになり、パフォーマンスが低下することがあります。大きなバッファを割り当てられるようにオペレーティング・システムを構成する方法の詳細は、第45章「パフォーマンス・チューニング」を参照してください。

待機時間とスループットの比較

これを送信用に設定する際(<packet-publisher>内)、値を大きくするとスループットが向上し、値を小さくすると待機時間が減少します。この値を変更する場合は、これらすべてのディメンションのパフォーマンスに与える影響を評価することをお薦めします。

要素

表A-35は、packet-buffer要素で定義可能な要素について説明しています。

表A-35 packet-bufferのサブ要素

要素 必須/オプション 説明

<maximum-packets>

オプション

unicast-listenermulticast-listenerおよびpacket-publisherの場合: データグラム・ソケット自身がバッファに求められるサイズのpacket-sizeのパケット数を指定します。SO_SNDBUFおよびSO_RCVBUFを参照してください。基礎となるソケットの実装で一定のサイズ以上をサポートできない場合、実際のバッファ・サイズは小さくなることがあります。デフォルト値は、公開用が32、マルチキャスト・リスニング用が64、およびユニキャスト・リスニング用が1428です。

<size>要素が指定されている場合、<maximum-packets>要素は指定できません。

<size>

オプション

基礎になるソケット・バッファの要求されるサイズを、パケット数ではなくバイト数で指定します。

<maximum-packets>要素が指定されている場合、<size>要素は指定できません。



packet-bundling

使用場所: packet-delivery

説明

packet-bundling要素には、ネットワーク切替えインフラストラクチャにかかる負荷を軽減するために、複数の小さなパケットを1つの大きなパケットにバンドルする操作に関連する構成情報を記述します。

デフォルトの構成

デフォルトのpacket-bundlingは、体感できる遅延を加えることなくバンドルを実行できる、アグレッシブさが最小の設定です。よりアグレッシブなバンドルの利点は、ネットワーク・インフラストラクチャとアプリケーション・オブジェクトの一般的なデータ・サイズおよびアクセス・パターンにより異なります。

要素

表A-36は、packet-bundling要素で定義可能な要素について説明しています。

表A-36 packet-bundlingのサブ要素

要素 必須/オプション 説明

<maximum-deferral- time>

オプション

追加のパケットがバンドルされるまで待機する間のパケットの最大遅延時間。この値を0に設定すると、待機のないアルゴリズムとなり、即座にアクセスできるパケットのみがバンドルされます。0より大きい値を設定すると、追加のパケットが使用可能になるまで待機する間に、多少の送信遅延が発生します。スループットに有害な影響が出ないように、通常この値は250マイクロ秒未満に設定します。単位を指定しない場合は、ナノ秒と見なされます。

デフォルト値は1us(マイクロ秒)です。

<aggression-factor>

オプション

パケット遅延アルゴリズムのアグレッシブさを指定します。maximum-deferral-time要素では遅延時間の上限を定義しますが、aggression-factorは平均の遅延時間に影響します。アグレッシブさの値が高いほど、パブリッシャが追加のパケットを待つ時間が長くなります。この要素は実数で表します。多くの場合は待機時間を最小に抑えながらパケットの使用率を上げることができるように、0.0から1.0の値を使用します。

デフォルト値は0です。



packet-delivery

使用場所: packet-publisher

説明

パケット配信に関連するタイミングおよび転送レートのパラメータを指定します。

停止検出

サブ要素<timeout-milliseconds>および<heartbeat-milliseconds>は、他のクラスタ・ノードの停止検出に使用されます。

要素

表A-37は、packet-delivery要素で定義可能な要素について説明しています。

表A-37 packet-deliveryのサブ要素

要素 必須/オプション 説明

<resend-milliseconds>

必須

確認が要求されるパケットの場合、対応するACKパケットを待つ最小時間をミリ秒単位で指定します。この時間を超過すると、パケットが再送信されます。デフォルト値は200です。

<timeout-milliseconds>

必須

確認が要求されるパケットの場合、最大時間をミリ秒単位で指定します。この時間を超過すると、パケットが再送信されます。このタイムアウトが経過した後、Coherenceでは受信側が停止していると見なすかどうかが決定されます。これを決定するには、他のノードがその受信者と通信できているかどうかなど、他のデータも考慮されます。デフォルト値は300000です。本番で使用する場合、300000および予想される最大のGCの全所要時間の2倍より大きな値を指定することをお薦めします。

<heartbeat-milliseconds>

必須

ハートビートの間隔を指定します。各メンバーはユニキャストのハートビートを発行し、最も上位のメンバーは、ブロードキャスト・メッセージとなるクラスタ・ハートビートを発行します。ハートビートは、高速な停止検出の一環としてtcp-ring-listenerで使用されます。デフォルト値は1000です。

<flow-control>

オプション

ノード当たりのパケット速度の調整およびリモートのGCの検出を構成します。

<packet-bundling>

オプション

Coherenceでパケット使用率の最大化を試行するアグレッシブさを構成します。



packet-pool

使用場所: incoming-message-handlerpacket-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のサブ要素

要素 必須/オプション 説明

<size>

必須

公開および受信を担当するサービスで使用する再利用可能なパケットのプールの最大サイズをバイト数で指定します。プールは、最初は小さく、必要に応じて、指定された上限まで大きくなります。

送受信用のデフォルト値は16MBです。



packet-publisher

使用場所: 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プロトコルのみを使用して接続するようにすることができます。デフォルト値はtrueです。事前定義されているオーバーライド値はtangosol.coherence.tcmp.enabledです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<packet-size>

オプション

使用するUDPパケットのサイズを指定します。

<packet-delivery>

必須

信頼性のあるパケット配信に関連するタイミングのパラメータを指定します。

<notification-queueing>

必須

通知キューに関連する構成情報を記述します。

<traffic-jam>

必須

パブリッシャのキューに配置できるパケットの最大数を指定します。この数を超過すると、クライアント・スレッドによってブロックされます。

<packet-buffer>

必須

オペレーティング・システムがバッファリングを要求される送信パケットの量を指定します。この値はパケット数またはバイト数で表します。

<packet-pool>

必須

Coherenceがバッファリングする送信パケットの数を指定します。この数を超過すると、送信パケットはブロックされます。

<priority>

必須

パケット・パブリッシャの実行スレッドの優先度を指定します。有効な値は1から10です。デフォルト値は6です。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。


packet-size

使用場所: 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のサブ要素

要素 必須/オプション 説明

<maximum-length>

必須

すべてのクラスタ・メンバーが問題なく処理できるパケット・サイズをバイト単位で指定します。この値は、クラスタ内のすべてのメンバーで同一にする必要があります。値を低くすることでクラスタの最大サイズを意図的に制限できます。これには512以上の値を指定する必要があります。デフォルト値は64KBです。

<preferred-length>

必須

ユニキャスト・ソケットおよびマルチキャスト・ソケットで送受信されるDatagramPacketオブジェクトの最適サイズをバイト単位で指定します。

これには<maximum-length>値よりも大きい値または小さい値を指定できます。この値は、クラスタ内のすべてのメンバーで同一にする必要はありません。理想的な値は、UDPパケット・ヘッダー(32バイト)またはTCPパケット・ヘッダー(52バイト)用の十分な容量を確保しながら、ネットワークMTU内に収まる値です。

この値は512以上にする必要があり、ローカル・ノードMTUに基づいてデフォルト設定されます。MTUを取得できない場合、MTU値は1500になります。



packet-speaker

使用場所: cluster-config

説明

ネットワーク・データ転送に使用するパケット・スピーカーの構成情報を指定します。

オフロード送信

パケット・スピーカーは、ネットワーク上でのパケットの送信を担当します。スピーカーは、ブロックされる可能性のあるネットワーク送信処理をpacket-publisherで検出する際に使用されます。これにより、パケット・パブリッシャはI/Oのブロックを回避し、送信パケットの準備を続行できます。パブリッシャは、パケットの負荷の変化に伴ってスピーカーを使用するかどうかを動的に選択します。

要素

表A-41は、packet-speaker要素で定義可能なサブ要素について説明しています。

表A-41 packet-speakerのサブ要素

要素 必須/オプション 説明

<volume-threshold>

オプション

スピーカーの起動に必要なパケットの負荷を指定します。

<priority>

必須

パケット・スピーカーの実行スレッドの優先度を指定します。有効な値は1から10です。デフォルト値は8です。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。


pause-detection

使用場所: flow-control

説明

Coherenceでリモート一時停止検出を使用すると、(GCが長いなどが原因で)応答のないクラスタ・ノードを検出し、それに対して反応できます。ノードが一時停止としてマークされた場合、そのノードを送信先とするパケットは、ノードが応答を再開するまでは、通常より遅い速度で送信されます。リモートGCの検出を使用すると、ノードが応答できない間にノードがあふれないようにできます。

要素

表A-42は、pause-detection要素で定義可能なサブ要素について説明しています。

表A-42 pause-detectionのサブ要素

要素 必須/オプション 説明

<maximum-packets>

オプション

応答のないクラスタ・ノードに再送信するパケットの最大数です。このパケット数を超過すると、そのノードは一時停止していると見なされます。この値を0に指定すると、一時停止検出が無効になります。デフォルト値は16です。



provider

使用場所: sslidentity-managertrust-manager

説明

provider要素には、java.security.Providerクラスを拡張するセキュリティ・プロバイダの構成情報を記述します。

要素

表A-43は、provider要素で定義可能なサブ要素について説明しています。

表A-43 providerのサブ要素

要素 必須/オプション 説明

<name>

オプション

java.security.Providerクラスを拡張するセキュリティ・プロバイダの名前を指定します。

クラス名は、この要素を使用するか、<class-name>要素または<class-factory-name>要素を使用して入力できます。

<class-name>

オプション

java.security.Providerクラスを拡張するセキュリティ・プロバイダの名前を指定します。

この要素は、<name>要素または<class-factory-name>要素と一緒に使用することはできません。

<class-factory-name>

オプション

Providerインスタンスを作成するためのファクトリ・クラスを指定します。インスタンスは、java.security.Providerクラスを実装する必要があります。

この要素は、<name>要素または<class-name>要素と一緒に使用することはできません。

この要素は、<method-name>要素と一緒に使用できます。

<method-name>

オプション

オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。

<init-params>

オプション

プロバイダ実装のクラス初期化パラメータを記述します。

この要素は、<name>要素と一緒に使用することはできません。



reporter

使用場所: management-config

説明

Reporterには、JMXのレポート作成機能が用意されています。Reporterは、すぐに利用可能なレポートを提供し、さらにカスタムのレポートの作成をサポートします。レポートは、管理者および開発者が容量管理や問題のトラブルシューティングを行う際に役立ちます。

要素

表A-44は、reporter要素で定義可能なサブ要素について説明しています。

表A-44 reporterのサブ要素

要素 必須/オプション 説明

<configuration>

必須

Reporter Batch XMLの場所を指定します。デフォルト・ファイルはreports/report-group.xmlで、coherence.jarライブラリにあります。

<autostart>

必須

ノードの起動時にReporterを自動的に起動させるかどうかを指定します。有効な値は、truefalseです。

デフォルト値はfalseです。

<distributed>

必須

Reporterを複数の管理ノード上で実行するかどうかを指定します。有効な値は、truefalseです。

デフォルト値はfalseです。



security-config

使用場所: coherence

要素

表A-45は、security-config要素で定義可能なサブ要素について説明しています。

表A-45 security-configのサブ要素

要素 必須/オプション 説明

<enabled>

必須

セキュリティ機能が有効化されているかどうかを指定します。security-configグループにあるその他の構成要素はすべて、この要素の値がtrueの場合にのみ妥当性が検証されて使用されます。有効な値は、trueまたはfalseです。デフォルト値はfalseです。事前定義されているオーバーライド値はtangosol.coherence.securityです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<login-module-name>

必須

コール元の認証に使用するJAAS LoginModuleの名前を指定します。この名前は、JAASで使用される構成ファイルのモジュールと一致している必要があります(-Djava.security.auth.login.config Javaコマンドライン属性などを使用して指定されます)。詳細は、『Sun Login Module Developer's Guide』を参照してください。

<access-controller>

必須

com.tangosol.net.security.AccessControllerインタフェースを実装するクラスの構成情報を記述します。セキュリティ・フレームワークはこれを使用してクラスタ・リソースのアクセス権をチェックしたり、これらの権限に関するノード間の通信を暗号化または復号化します。

<callback-handler>

オプション

javax.security.auth.callback.CallbackHandlerインタフェースを実装するクラスの構成情報を記述します。このインタフェースは、コール元に関連付けられた識別情報がない場合に、保護されたクラスタ・リソースにアクセスしようとするとコールされます。

<identity-asserter>

オプション

ユーザーIDを確立するためIDトークンの検証の際にコールされるcom.tangosol.net.security.IdentityAsserterインタフェースを実装するクラスの構成情報を記述します。IDアサーション・プロバイダがIDトランスフォーマとともに使用され、Coherence*Extendのクライアントおよびプロキシ間の接続を保護します。

<identity-transformer>

オプション

Subject(.NETではPrincipal)を、IDをアサートするトークンに変換する際にコールされるcom.tangosol.net.security.IdentityTransformerインタフェースを実装するクラスの構成情報を記述します。IDトランスフォーマがIDアサーション・プロバイダとともに使用され、Coherence*Extendのクライアントおよびプロキシ間の接続を保護します。

<subject-scope>

オプション

リモート・キャッシュまたはサービス参照がサブジェクトによって共有されるかどうかを指定します。有効な値は、trueまたはfalseです。値をtrueに設定すると、リモート参照はグローバルに共有されません。各サブジェクトは異なる参照を取得します。

デフォルト値はfalseです。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。


serializers

使用場所: 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のサブ要素

要素 必須/オプション 説明

<class-name>

オプション

com.tangosol.io.Serializerを実装するクラスを指定します。この要素は、<class-factory-name>要素と一緒に使用することはできません。

<class-factory-name>

オプション

カスタムのシリアライザ・インスタンスを作成するためのファクトリ・クラスを指定します。このインスタンスは、com.tangosol.io.Serializerを実装する必要があります。

この要素は、<class-name>要素と一緒に使用することはできません。この要素は、<method-name>要素と一緒に使用できます。

<method-name>

オプション

オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。

<init-params>

オプション

シリアライザ実装のクラス初期化パラメータを記述します。



service-guardian

使用場所: cluster-config

説明

サービスのデッドロックを検出して解決を試みるサービス・ガーディアンの構成を指定します。

要素

表A-47は、service-guardian要素で定義可能なサブ要素について説明しています。

表A-47 service-guardianのサブ要素

要素 必須/オプション 説明

<timeout-milliseconds>

オプション

サービスがデッドロックされたり応答しなくなったりするのを回避するために使用されるタイムアウト値。service-guardian/timeout-milliseconds値は、packet-delivery/timeout-milliseconds値と同じか、またはそれより大きい値に設定することをお薦めします。タイムアウト値を0にすると、サービス・ガーディアンは無効になります。

デフォルト値は305000です。

事前定義されているオーバーライド値はtangosol.coherence.guard.timeoutです。

<service-failure-policy>

オプション

動作が異常なサービス・スレッドをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。

有効な値は次のとおりです。

  • exit-cluster: 応答しないように見えるスレッドをリカバリしようとします。試行に失敗した場合は、関連付けられたサービスの停止が試行されます。関連付けられたサービスを停止できない場合、このポリシーによって、ローカル・ノードでクラスタ・サービスが停止します。

  • exit-process: 応答しないように見えるスレッドをリカバリしようとします。試行に失敗した場合は、関連付けられたサービスの停止が試行されます。関連付けられたサービスを停止できない場合、このポリシーによって、ローカル・ノードでJVMが途中で終了します。

  • logging: 検出された問題をログに記録しますが、修正処置は実行されません。

  • カスタム・クラス: <instance>のサブ要素が使用されて、com.tangosol.net.ServiceFailurePolicy実装のクラス構成情報が提供されます。

デフォルト値はexit-clusterです。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。


services

使用場所: cluster-config

説明

Coherenceサービスの構成を指定します。

サービス・コンポーネント

構成可能なサービスの種類は、次のとおりです。

要素

表A-48は、services要素で定義可能なサブ要素について説明しています。

表A-48 servicesのサブ要素

要素 必須/オプション 説明

<service-type>

必須

サービスの正規名を指定します。これにより、キャッシュ構成のキャッシング・スキームのservice-name要素からこのサービスを参照できます。詳細は、「caching-schemes」を参照してください。

<service-component>

必須

サービスの完全修飾クラス名、またはベースのサービス・コンポーネントに対する再配置可能なコンポーネントの相対名を指定します。有効な値は次のとおりです。

  • ReplicatedCache

  • ReplicatedCache.Optimistic

  • DistributedCache

  • SimpleCache

  • LocalCache

  • InvocationService

<use-filters>

オプション

このサービスで使用するfilters名のリストを記述します。たとえば、use-filterを次のように指定します。

<use-filters>
  <filter-name>gzip</filter-name>
</use-filters>

この場合、ネットワーク・メッセージに対してgzip圧縮がアクティブ化されるため、WANおよび低帯域幅ネットワークのパフォーマンスが大幅に向上します。

<init-params>

オプション

service-componentに固有の初期化パラメータを指定します。サービス固有のパラメータの詳細は、次を参照してください。


内容のオーバーライド属性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 表のエントリのサンプル

パラメータ値 値の説明

local-storage

DistributedCacheサービスのこのメンバーによって、ローカル記憶域を有効化するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はtrueです。事前構成されているオーバーライドはtangosol.coherence.distributed.localstorageです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。


例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サービスのパラメータ

DistributedCache <services>の要素では、表A-50に記載されたパラメータがサポートされます。この設定は、coherence-cache-config.xmlディスクリプタ内の<distributed-scheme>要素の一部として指定することもできます。

表A-50 DistributedCacheサービスのパラメータ

パラメータ名 値の説明

backup-count

DistributedCacheサービスのうち、各保存単位のバックアップ・データをキャッシュに保持するメンバーの数を指定します。この値が0になっていると、異常終了した場合にキャッシュ内のデータの一部が失われます。この値がNになっていると、即座に終了したクラスタ・ノードの数がN以内の場合、キャッシュ・データが保持されます。サイズMの分散キャッシュを維持する場合、クラスタ内の合計メモリー使用量はクラスタ・ノードの数に依存するのではなく、M*(N+1)となります。

推奨値は、0、1または2です。

デフォルト値は1です。

backup-storage/class-name

customタイプにのみ適用されます。カスタム記憶域実装のクラス名を指定します。クラスにcom.tangosol.run.xml.XmlConfigurableインタフェースが実装される場合は、構成時にsetConfigメソッドが呼び出され、backup-storage要素全体が渡されます。

backup-storage/directory

file-mappedタイプにのみ適用されます。ディスク永続マネージャ(com.tangosol.util.nio.MappedBufferManager)がファイルを格納するときのルートとして使用するディレクトリのパス名を指定します。指定しない場合、または存在しないディレクトリを指定した場合は、デフォルトの場所にある一時ファイルが使用されます。

デフォルト値は、Javaランタイムによって指定されるデフォルトの一時ディレクトリです。

backup-storage/initial-size

off-heapおよびfile-mappedタイプにのみ適用されます。バッファの初期サイズをバイト単位で指定します。この要素の値は、[\d]+[[.][\d]]?[K|k|M|m|G|g]?[B|b]?の形式で指定する必要があります。前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(kilo、210)

  • Mまたはm(mega、220)

  • Gまたはg(giga、230)

値に係数が含まれていない場合は、megaが係数として適用されます。

有効な値は、1Integer.MAX_VALUE - 1023(2,147,482,624バイト)の間の正の整数です。

デフォルト値は1MBです。

backup-storage/maximum-size

off-heapおよびfile-mappedタイプにのみ適用されます。バッファの最大サイズをバイト単位で指定します。この要素の値は、[\d]+[[.][\d]]?[K|k|M|m|G|g]?[B|b]?の形式で指定する必要があります。前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(kilo、210)

  • Mまたはm(mega、220)

  • Gまたはg(giga、230)

値に係数が含まれていない場合は、megaが係数として適用されます。

有効な値は、1Integer.MAX_VALUE - 1023(2,147,482,624バイト)の間の正の整数です。

デフォルト値は1024MBです。

backup-storage/scheme-name

schemタイプにのみ適用されます。ConfigurableCacheFactoryのスキーム名を指定します。

backup-storage/type

バックアップ・データの保持に使用する記憶域のタイプを指定します。有効な値は次のとおりです。

  • on-heap: 対応する実装クラスはjava.util.HashMapです。

  • off-heap: 対応する実装クラスは、com.tangosol.util.nio.DirectBufferManagerを使用するcom.tangosol.util.nio.BinaryMapです。JDK 1.5以降でのみ使用できます。

  • file-mapped: 対応する実装クラスは、com.tangosol.util.nio.MappedBufferManagerを使用するcom.tangosol.util.nio.BinaryMapです。JDK 1.5以降でのみ使用できます。

  • custom: 対応する実装クラスは、backup-storage/class要素によって指定されるクラスです。

  • scheme: 対応する実装クラスは、backup-storage/scheme-name要素が参照するスキームに対してConfigurableCacheFactoryから返されるマップです。

デフォルト値はon-heapです。

事前構成されているオーバーライドはtangosol.coherence.distributed.backupです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

key-associator/class-name

com.tangosol.net.partition.KeyAssociatorインタフェースを実装するクラスの名前を指定します。この実装には、パラメータがゼロのpublicなコンストラクタが必要です。

key-partitioning/class-name

com.tangosol.net.partition.KeyPartitioningStrategyインタフェースを実装するクラスの名前を指定します。この実装には、パラメータがゼロのpublicなコンストラクタが必要です。

lease-granularity

リース所有権の精度を指定します。リリース2.3以降で使用できます。有効な値は次のとおりです。

  • thread

  • member

値がthreadの場合、ロックはそのロックを取得したスレッドによって保持され、そのスレッドによってのみ解放されます。値がmember の場合、ロックはクラスタ・ノードによって保持され、ロックを取得したクラスタ・ノード上で実行されるスレッドによって解放できます。

デフォルト値はthreadです。

local-storage

このDistributedCacheサービスのメンバーによって、ローカル記憶域を有効化するかどうかを指定します。

通常、構成ファイル内ではこの値を未指定にしておき、システム・プロパティtangosol.coherence.distributed.localstorageを使用し、プロセスごとに設定します。これによって、キャッシュ・クライアントとキャッシュ・サーバーは、同じ構成ディスクリプタを使用できます。

有効な値は、trueまたはfalseです。デフォルト値はtrueです。

事前構成されているオーバーライドはtangosol.coherence.distributed.localstorageです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

partition-count

パーティション(分散)キャッシュを分割するパーティションの数を指定します。パーティション・キャッシュ・サービスを実行し、local-storage(<local-storage>サブ要素)オプションがtrueに設定されたメンバーのそれぞれが、公平な(偏りのない)数のパーティションを管理します。

パーティションの数は素数とし、いずれのパーティションのサイズも50MBを超えることのないように十分なパーティション数を指定する必要があります。

次に、サービス記憶域サイズに応じた適切なデフォルト設定を示します。

service storage       partition-count
_______________       ______________
   100M                    257
     1G                    509
    10G                   2039
    50G                   4093
   100G                   8191

最初の1,000個の素数のリストについては、次のサイトを参照してください。

http://primes.utm.edu/lists/

有効値は正の整数です。デフォルト値は257です。

partition-listener/class-name

com.tangosol.net.partition.PartitionListenerインタフェースを実装するクラスの名前を指定します。この実装には、パラメータがゼロのpublicなコンストラクタが必要です。

request-timeout

レスポンスが来るまでクライアントが待機する最大時間を指定します。この時間を超過すると、元のリクエストが破棄されます。リクエスト時間はクライアント側で測定されるもので、対応するサーバー・ノードに対して実行のためのリクエストが送信されてからの経過時間に次の時間を加えたものです。

  • 実行側のノード(サーバー)にリクエストを配信するための所要時間

  • タスクが受信されてサービス・キューに入れられてから実行が開始されるまでの間隔

  • タスクの実行時間

  • クライアントに結果を返信するための所要時間

この要素の値は、[\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]?の形式で指定する必要があります。前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は0です。

task-hung-threshold

タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。

注意: ポストされたタスクがまだ開始されていない場合は、ハングとみなされません。この属性は、スレッド・プールが使用されている(thread-countの値が正の)場合にのみ適用されます。

有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。

task-timeout

タイムアウト可能なタスク(たとえば、com.tangosol.net.PriorityTaskインタフェースの実装)のデフォルト・タイムアウト値をミリ秒単位で指定します。ただし、タスク実行のタイムアウト値は明示的に指定しません。タスク実行時間はサーバー側で測定され、開始されるまでサービス・バックログ・キューで待機するための所要時間は含まれません。この属性は、スレッド・プールが使用されている(thread-count値が正の)場合にのみ適用されます。

有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。

thread-count

分散キャッシュ・サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。

有効な値は、正の整数またはゼロです。

デフォルト値は0です。事前構成されているオーバーライド値はtangosol.coherence.distributed.threadsです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

単にインメモリー・データを使用する(リードスルー、ライトスルーおよびライトビハインドを使用しない)シナリオまたは単純なアクセスを使用する(入力プロセッサや集計などを使用しない)シナリオでは、値を0に設定します。負荷の大きい計算を行うシナリオ(集計など)では、スレッドの数は、その計算で使用可能なコアの数にする必要があります。たとえば、16コア・ボックス上で4つのノードを実行する場合、プール内に約4つのスレッドが存在することになります。I/Oの負荷の高いシナリオ(リードスルー、ライトスルー、ライトビハインドなど)では、スレッドの数はそれより多くなります。この場合、そのボックスが飽和状態になるところまでスレッドを増やします。

transfer-threshold

プライマリ・バケット分散のしきい値をキロバイト単位で指定します。分散キャッシュ・サービスに新しいノードが結合する場合、またはサービスのメンバーのいずれかの結合が解除される場合、残りのノードによって、バケット所有権の再分散タスクが実行されます。このプロセスでは、所有権情報とともに既存のデータの均衡化が再実行されます。このパラメータでは、データ転送通信で優先されるメッセージ・サイズを示します。この値を低く設定すると、分散プロセスの所要時間は長くなりますが、このアクティビティ実行中のネットワーク帯域幅の使用量は軽減されます。

有効な値は、ゼロより大きな整数です。

デフォルト値は512(0.5MB)です。事前構成されているオーバーライド値はtangosol.coherence.distributed.transferです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。



ReplicatedCacheサービスのパラメータ

ReplicatedCache servicesの要素では、表A-51に記載されたパラメータがサポートされます。この設定は、coherence-cache-config.xmlディスクリプタ内のreplicated-scheme要素の一部として指定することもできます。

表A-51 ReplicatedCacheサービスのパラメータ

パラメータ名 値の説明

lease-granularity

リース所有権の精度を指定します。リリース2.3以降で使用できます。有効な値は次のとおりです。

  • thread

  • member

値がthreadの場合、ロックはそのロックを取得したスレッドによって保持され、そのスレッドによってのみ解放されます。値がmember の場合、ロックはクラスタ・ノードによって保持され、ロックを取得したクラスタ・ノード上で実行されるスレッドによって解放できます。

デフォルト値はthreadです。

mobile-issues

リースの問題を最新のロック・ホルダーに転送するかどうかを指定します。

有効な値は、trueまたはfalseです。

デフォルト値はfalseです。

standard-lease-milliseconds

標準的なリースの継続時間をミリ秒単位で指定します。リースがこのミリ秒数を超過すると、ロックは自動的に解放されます。期限切れが発生しないリースを指定するには、この値をゼロに設定します。この設定の目的は、スタック・スレッドを原因とするデッドロックまたはブロックが発生しないようにすることです。最長の予想ロック継続時間より高い(たとえば、トランザクション・タイムアウトより高い)値を設定する必要があります。また、packet-delivery/timeout-millisecondsの値より高い値を設定することをお薦めします。

有効な値は、桁数の多い正の数値またはゼロです。

デフォルト値は0です。



InvocationServiceのパラメータ

InvocationService servicesの要素では、表A-52に記載されたパラメータがサポートされます。この設定は、coherence-cache-config.xmlディスクリプタ内のinvocation-scheme要素の一部として指定することもできます。

表A-52 InvocationServiceのパラメータ

パラメータ名 値の説明

request-timeout

タイムアウト可能なリクエスト(たとえば、com.tangosol.net.PriorityTaskインタフェースの実装)のデフォルト・タイムアウト値をミリ秒単位で指定します。ただし、リクエストのタイムアウト値は明示的に指定しません。リクエスト時間はクライアント側で測定されるもので、対応するサーバー・ノードに対して実行のためのリクエストが送信されてからの経過時間に次の時間を加えたものです。

  • 実行側のノード(サーバー)にリクエストを配信するための所要時間

  • タスクが受信されてサービス・キューに入れられてから実行が開始されるまでの間隔

  • タスクの実行時間

  • クライアントに結果を返信するための所要時間

有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。

task-hung-threshold

タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。注意: ポストされたタスクがまだ開始されていない場合は、ハングと見なされません。この属性は、スレッド・プールが使用されている(thread-countの値が正の)場合にのみ適用されます。

task-timeout

タイムアウト可能なタスク(たとえば、com.tangosol.net.PriorityTaskインタフェースの実装)のデフォルト・タイムアウト値をミリ秒単位で指定します。ただし、タスク実行のタイムアウト値は明示的に指定しません。タスク実行時間はサーバー側で測定され、開始されるまでサービス・バックログ・キューで待機するための所要時間は含まれません。この属性は、スレッド・プールが使用されている(thread-count値が正の)場合にのみ適用されます。

有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。

thread-count

起動サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。

有効な値は、正の整数またはゼロです。事前定義されているオーバーライド値はtangosol.coherence.invocation.threadsです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

デフォルト値は0です。

単にインメモリー・データを使用する(リードスルー、ライトスルーおよびライトビハインドを使用しない)シナリオまたは単純なアクセスを使用する(入力プロセッサや集計などを使用しない)シナリオでは、値を0に設定します。負荷の大きい計算を行うシナリオ(集計など)では、スレッドの数は、その計算で使用可能なコアの数にする必要があります。たとえば、16コア・ボックス上で4つのノードを実行する場合、プール内に約4つのスレッドが存在することになります。I/Oの負荷の高いシナリオ(リードスルー、ライトスルー、ライトビハインドなど)では、スレッドの数はそれより多くなります。この場合、そのボックスが飽和状態になるところまでスレッドを増やします。



ProxyServiceのパラメータ

ProxyService servicesの要素では、表A-53に記載されたパラメータがサポートされます。この設定は、coherence-cache-config.xmlディスクリプタ内のproxy-scheme要素の一部として指定することもできます。

表A-53 ProxyServiceのパラメータ

パラメータ名 値の説明

thread-count

プロキシ・サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。

有効な値は、正の整数またはゼロです。

デフォルト値は0です。

プロキシ・サービス・スレッドは、アプリケーションのコールのかわりに操作を実行します。したがって、値は発生している同時操作と同じ数に設定します。

task-hung-threshold

タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。

注意: ポストされたタスクがまだ開始されていない場合は、ハングとみなされません。この属性は、スレッド・プールが使用されている(thread-countの値が正の)場合にのみ適用されます。

有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。

task-timeout

タイムアウト可能なタスク(たとえば、com.tangosol.net.PriorityTaskインタフェースの実装)のデフォルト・タイムアウト値をミリ秒単位で指定します。ただし、タスク実行のタイムアウト値は明示的に指定しません。タスク実行時間はサーバー側で測定され、開始されるまでサービス・バックログ・キューで待機するための所要時間は含まれません。この属性は、スレッド・プールが使用されている(thread-count値が正の)場合にのみ適用されます。

有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。




shutdown-listener

使用場所: cluster-config

説明

外部シャットダウン・リクエストを受信したときにクラスタ・ノードで実行するアクションを指定します。外部シャットダウンには、UNIXのkillコマンドやWindowsおよびUNIXのCtrl-Cなどがあります。

要素

表A-54は、shutdown-listener要素で定義可能な要素について説明しています。

表A-54 shutdown-listenerのサブ要素

要素 必須/オプション 説明

<enabled>

必須

外部JVMシャットダウンの際に実行するアクションの種類を指定します。有効な値は次のとおりです。

  • none: 明示的なシャットダウン・アクションを実行しません。

  • force: Cluster.stop()をコールして、ノードのハードストップ(強制停止)を実行します。

  • graceful: Cluster.shutdown()をコールして、通常のシャットダウンを実行します。

  • true: forceと同じ。

  • false: noneと同じ。

注意: 本番で使用する場合、外部シャットダウンに対する動作が目的どおりであることがテストで検証されている場合を除き、この値をnoneに設定することをお薦めします。デフォルト値はforceです。事前定義されているオーバーライド値はtangosol.coherence.shutdownhookです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。詳細は、「要素の属性」を参照してください。


socket-address

使用場所: well-known-addresses

要素

表A-55は、socket-address要素で定義可能なサブ要素について説明しています。

表A-55 socket-addressのサブ要素

要素 必須/オプション 説明

<address>

必須

ソケットがリスニングまたは公開するIPアドレスを指定します。

注意: localhostをループバック・アドレスとして定義しているシステムではlocalhostの設定が機能しない場合があります。その場合は、マシンの名前または特定のIPアドレスを指定します。

<port>

必須

ソケットがリスニングまたは公開するポートを指定します。有効な値は1から65535です。



socket-provider

使用場所: socket-providersunicast-listener

説明

<socket-provider>要素には、com.tangosol.net.SocketProviderインタフェースを実装するソケットおよびチャンネル・ファクトリの構成情報を記述します。<unicast-listener>要素内で構成されたソケット・プロバイダはTCMP用です。Coherence*Extend用のソケット・プロバイダは、キャッシュ構成ファイルの<tcp-acceptor>要素および<tcp-initiator>要素内で構成されます。

<socket-providers>要素内で定義されるソケット・プロバイダは、ユニキャスト・リスナー構成(「unicast-listener」を参照)、個々のキャッシュ・スキーム定義(「socket-provider」を参照)、およびソケット・プロバイダを明示的に定義していないサービス用のデフォルト・ソケット・プロバイダ(「defaults」を参照)により、参照されます。

出荷状態で、次の事前定義ソケット・プロバイダ構成が含まれています。必要に応じて、オペレーション・オーバーライド・ファイルで追加のソケット・プロバイダを定義できます。

要素

表A-56は、socket-provider要素で定義可能なサブ要素について説明しています。

表A-56 socket-providerのサブ要素

要素 必須/オプション 説明

<system>

オプション

JVMのデフォルトのソケットおよびチャンネル実装のインスタンスを作成するソケット・プロバイダを指定します。

<tcp>

オプション

TCPベースのソケットおよびチャンネル実装を生成するソケット・プロバイダを指定します。

<ssl>

オプション

SSLを使用するソケットおよびチャンネル実装を作成するソケット・プロバイダを指定します。

<instance>

オプション

com.tangosol.net.SocketProvider実装のクラス構成情報を記述します。



socket-providers

使用場所: cluster-config

説明

socket-providers要素には、ソケット・プロバイダ実装ごとの宣言データを記述します。Coherenceには、system、tcp、およびsslの事前定義ソケット・プロバイダが含まれています。

要素

表A-57は、socket-providers要素で定義可能なサブ要素について説明しています。

表A-57 socket-providersのサブ要素

要素 必須/オプション 説明

<socket-provider>

オプション

com.tangosol.net.SocketProviderインタフェースを実装するソケットおよびチャンネル・ファクトリの構成情報を指定します。



ssl

使用場所: socket-provider

説明

<ssl>要素には、SSLを使用するソケットおよびチャンネル実装を作成するソケット・プロバイダの構成情報を記述します。SSLがユニキャスト・リスナー用に構成されている場合、リスナーはwell-known-addressesを使用して構成する必要があります。

要素

表A-58は、ssl要素で定義可能な要素について説明しています。

表A-58 sslのサブ要素

要素 必須/オプション 説明

<protocol>

オプション

SSLソケット・プロバイダによって作成されたソケットおよびチャンネル実装が使用するプロトコルの名前を指定します。デフォルト値はTLSです。

<provider>

オプション

セキュリティ・プロバイダ・インスタンスの構成を指定します。

<executor>

オプション

java.util.concurrent.Executorインタフェースの実装の構成情報を指定します。

<class-name>サブ要素は、Executorインタフェースを実装するクラスの名前を提供するために使用されます。代替策としては、<class-factory-name>サブ要素を使用して、Executorインスタンスおよび(オブジェクトのインスタンス化を実行するファクトリ・クラス上で静的なファクトリ・メソッドの名前を指定する)<method-name>サブ要素を作成するためのファクトリ・クラスを指定できます。いずれの方法でも、<init-params>要素を使用して初期化パラメータを指定できます。

<identity-manager>

オプション

アイデンティティ・マネージャ・インスタンスを初期化するための構成情報を指定します。

<trust-manager>

オプション

トラスト・マネージャ・インスタンスを初期化するための構成情報を指定します。

<hostname-verifier>

オプション

javax.net.ssl.HostnameVerifierインタフェースの実装の構成情報を指定します。SSLハンドシェイクの際、URLのホスト名とサーバーの識別ホスト名が一致しないと、検証メカニズムは、このインスタンスに対するコール・バックを実行して、接続を許可するかどうかを判断します。

<class-name>サブ要素は、HostnameVerifierインタフェースを実装するクラスの名前を提供するために使用されます。代替策としては、<class-factory-name>サブ要素を使用して、HostnameVerifierインスタンスおよび(オブジェクトのインスタンス化を実行するファクトリ・クラス上で静的なファクトリ・メソッドの名前を指定する)<method-name>サブ要素を作成するためのファクトリ・クラスを指定できます。いずれの方法でも、<init-params>要素を使用して初期化パラメータを指定できます。



tcp-ring-listener

使用場所: 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リング・リスナーを有効にするかどうかを指定します。有効な値は、truefalseです。デフォルト値はtrueです。事前構成されているオーバーライド値はtangosol.coherence.tcpringです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<ip-timeout>

オプション

クラスタ・メンバーをホストするマシンに接続できないことを決定するために使用するタイムアウトを指定します。マシンに接続できないメンバーを削除する必要があることを決定する前に、指定した回数の接続を試行できます。

<ip-timeout>および<ip-attempts>の要素の値は、許容できる一時的なネットワークの停止に影響を与えないだけの大きな値にする必要があります。

この障害はjava.net.InetAddress.isReachableメカニズムに依存しています。使用可能性の特定方法については、http://java.sun.com/j2se/1.5.0/docs/api/java/net/InetAddress.html#isReachable(int)を参照してください。

有効な値は、時間間隔を表す文字列です。タイムアウトを0にすることは、マシンレベルの監視が無効となるためお薦めしません。

デフォルト値は5sです。

<ip-attempts>

オプション

クラスタ・メンバーをホストするマシンが使用できなくなり、これらのクラスタ・メンバーを削除する必要があることを決定する前に試行する接続の回数を指定します。

<ip-timeout>および<ip-attempts>の要素の値は、許容できる一時的なネットワークの停止に影響を与えないだけの大きな値にする必要があります。有効な値は正の整数です。

デフォルト値は3です。

<listen-backlog>

オプション

TCP/IPサーバー・ソケットのバックログ・キューのサイズを指定します。有効値は正の整数です。

デフォルト値はOSに依存します。

<priority>

必須

TCPリング・リスナーの実行スレッドの優先度を指定します。有効な値は1から10です。デフォルト値は6です。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。


traffic-jam

使用場所: 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のサブ要素

要素 必須/オプション 説明

<maximum-packets>

必須

パブリッシャで容認される保留パケットの最大数を指定します。この数を超過すると、パブリッシャが詰まり、クライアント・リクエスト(ローカルにあるシステム以外のスレッド)の速度を落とす必要があると判断されます。ゼロは制限がないことを示します。このプロパティで再送信キューのサイズを制限することにより、予期しないメモリー不足状態のほとんどは発生しなくなります。デフォルト値は8192です。

<pause-milliseconds>

必須

パブリッシャが詰まったときに、メッセージの送信を試みるクライアント・スレッドをパブリッシャが一時停止する時間(ミリ秒)です。パブリッシャの詰まりが解消されるまでメッセージは送信されず、このプロパティで指定された期間中はスレッドの休止が繰り返されます。デフォルト値は10です。



trust-manager

使用場所: ssl

説明

<trust-manager>要素には、javax.net.ssl.TrustManagerインスタンスを初期化するための構成情報を記述します。

トラスト・マネージャは、信頼の決定を行う際に使用されるトラスト・マテリアルを管理し、ピアが提示した資格証明を受け入れるかどうかを決定します。

有効なtrust-manager構成には、少なくとも1つの子要素が記述されます。

要素

表A-61は、trust-manager要素で定義可能な要素について説明しています。

表A-61 trust-managerのサブ要素

要素 必須/オプション 説明

<algorithm>

オプション

トラスト・マネージャによって使用されるアルゴリズムを指定します。デフォルト値はSunX509です。

<provider>

オプション

セキュリティ・プロバイダ・インスタンスの構成を指定します。

<key-store>

オプション

キー・ストア実装の構成を指定します。



unicast-listener

使用場所: 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>

オプション

マルチキャスト・ブロードキャストのかわりにクラスタ検出プロトコルで使用されるwell-known-addresses(WKA)のリストを記述します。

<machine-id>

オプション

各サーバー・マシンを一意に識別する識別子を指定します。指定しない場合、デフォルト値はデフォルトのネットワーク・インタフェースのアドレスから生成されます。各メンバーを別のマシンで稼働するメンバーによって確実にバックアップすることにより、クラスタ内の各マシンのマシンIDを、クラスタ・サービスのフェイルオーバーの計画に使用できます。

<address>

必須

ソケットがリスニングまたは公開するIPアドレスを指定します。注意: localhostをループバック・アドレスとして定義しているシステムではlocalhostの設定が機能しない場合があります。その場合は、マシンの名前または特定のIPアドレスを指定します。また、デフォルトで、マルチキャスト・リスナーは、このアドレスによって定義されたインタフェースと同じインタフェースにバインドします。

デフォルト値はlocalhostです。事前定義されているオーバーライド値はtangosol.coherence.localhostです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<port>

必須

ソケットがリスニングまたは公開するポートを指定します。第2ポートは自動的に開かれ、次に使用可能なポートにデフォルト設定されます。有効な値は1 - 65535です。第1ポートのデフォルト値は8088、第2ポートのデフォルト値は8089(使用可能な場合)です。事前構成されているオーバーライド値はtangosol.coherence.localportです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<port-auto-adjust>

必須

指定したポートがすでに使用されているためにバインドできない場合に、ユニキャスト・ポートを自動的に増分するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はtrueです。事前定義されているオーバーライド値はtangosol.coherence.localport.adjustです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<packet-buffer>

必須

オペレーティング・システムがバッファリングを要求される受信パケットの量を指定します。この値はパケット数またはバイト数で表します。

<priority>

必須

ユニキャスト・リスナーの実行スレッドの優先度を指定します。有効な値は1から10です。デフォルト値は8です。

<socket-provider>

オプション

com.tangosol.net.SocketProviderインタフェースを実装するソケットおよびチャンネル・ファクトリの構成情報を指定します。ソケット・プロバイダはTCMP通信に使用されます。この要素は、<socket-providers>要素内ですでに定義されているソケット・プロバイダ構成を参照する際にも使用できます。例:

<socket-provider>ssl</socket-provider>

事前定義されているオーバーライド値はtangosol.coherence.cluster.socketproviderです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。


volume-threshold

使用場所: packet-speaker

説明

スピーカー・デーモンの起動に必要な送信パケットの最小量を指定します。

パフォーマンスへの影響

パケットの負荷が比較的低い場合、スピーカーの操作をパブリッシャのスレッドで実行すると効率が向上することがあります。パケットの負荷が高い場合、スピーカーを使用すると、スピーカーによってネットワーク上でパケットを送信しながらパブリッシャはパケットの準備を続けることができます。

要素

表A-63は、packet-speaker要素で定義可能な要素について説明しています。

表A-63 packet-speakerのサブ要素

要素 必須/オプション 説明

<minimum-packets>

必須

スピーカー・デーモンを起動するために送信の準備を整える必要のあるパケットの最小数を指定します。値を0に指定するとスピーカーが常に強制的に使用され、高い値を指定すると使用されなくなります。値を指定しないと、packet-bufferと一致するように設定されます(デフォルト)。



well-known-addresses

使用場所: 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のサブ要素

要素 必須/オプション 説明

<socket-address>

オプション

マルチキャスト・ブロードキャストのかわりにクラスタ検出プロトコルで使用されるWKAのリストを指定します。1つ以上のWKAを指定した場合、メンバーがクラスタに参加するようにするには、そのメンバーがWKAになるか、または少なくとも1つのWKAメンバーが稼働している必要があります。また、すべてのクラスタ通信はユニキャストを使用して実行されます。空の場合または指定していない場合は、マルチキャスト通信が使用されます。事前構成されているオーバーライド値は、tangosol.coherence.wkaおよびtangosol.coherence.wka.portです。詳細は、付録C「コマンドラインのオーバーライド」を参照してください。

<address-provider>

オプション

WKAを提供するcom.tangosol.util.AddressProvider実装の構成を記述します。コールするコンポーネントは、ノードの起動時に一覧の取得を試みます。プロバイダは、終了するnullアドレスを返し、使用できるすべてのアドレスが返されたことを示す必要があります。


内容のオーバーライド属性xml-overrideを使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。この属性の詳細は、「要素の属性」を参照してください。


要素の属性

要素の内容をオーバーライドするには、オプションのid属性およびxml-override属性を使用できます。これらの属性は、次の要素の中に、独立して記述することもまとめて記述することもできます。

表A-65は、idまたはxml-override、あるいはその両方を使用できる要素を示しています。

表A-66は、id属性およびxml-override属性の機能について説明しています。

表A-66 id属性およびxml-override属性の説明

属性 必須/オプション 説明

xml-override

オプション

この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドできるようにします。この属性の有効な値は、オーバーライド・ドキュメントのリソース名です。このリソース名は、coherence.jarライブラリに含まれるクラスでClassLoader.getResourceAsStream(String name)を使用してアクセスできる必要があります。つまり、一般的には、リソース名の先頭に「/」が付き、リソース名がクラスパスに存在している必要があります。

この属性で参照されるオーバーライドXMLドキュメントは、存在しなくてもかまいません。ただし、存在する場合は、そのルート要素の名前が、オーバーライドする要素の名前と同じである必要があります。名前の同じ要素が複数ある場合(例、<services>)、id属性を使用して、オーバーライドされるベース要素、およびオーバーライド要素自体を特定する必要があります。オーバーライド・ドキュメントの要素のうち、一致する要素がベース・ドキュメントにない要素のみがベースに付加されます。

id

オプション

名前の同じ要素が複数ある場合(例、<services>)、xml-override属性とともに使用して、オーバーライドされるベース要素、およびオーバーライド要素自体を特定します。オーバーライド・ドキュメントの要素のうち、一致する要素がベース・ドキュメントにない要素のみがベースに付加されます。