プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Coherenceでのアプリケーションの開発
12c (12.1.3)
E56206-04
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

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

この付録では、オペレーション・デプロイメント・ディスクリプタ要素の詳細なリファレンスを提供し、これらの要素が表示されるデプロイメント・ディスクリプタ・ファイルについて簡単に説明します。

この付録では次の項について説明します。

A.1 オペレーション・デプロイメント・ディスクリプタ

tangosol-coherence.xmlオペレーション・デプロイメント・ディスクリプタでは、クラスタリング、通信およびデータ管理サービスを制御する操作設定および実行時設定を指定します。このオペレーション・デプロイメント・ディスクリプタはcoherence.jarライブラリのルートにあります。カスタムのtangosol-coherence.xmlファイルを作成できますが、操作設定の変更に推奨される方法は、後述の「オペレーション・オーバーライド・ファイル」で説明するように、tangosol-coherence-override.xmlオペレーション・オーバーライド・ファイルを使用することです。

オペレーション・デプロイメント・ディスクリプタ・スキーマはcoherence-operational-config.xsdファイルで定義します。これがcoherence-operational-config-base.xsdファイルをインポートし、これがさらにcoherence-config-base.xsdファイルを暗黙的にインポートします。このオペレーション・デプロイメント・ディスクリプタ・スキーマ・ファイルは、coherence.jarライブラリのルートおよび次のWeb URLにあります。

http://xmlns.oracle.com/coherence/coherence-operational-config/1.2/coherence-operational-config.xsd

<cohrence>要素はオペレーション・ディスクリプタのルート要素であり、XSDおよびCoherenceネームスペース・リファレンスと、coherence-operational-config.xsdファイルの場所が含まれます。例:

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
   xsi:schemaLocation="http://xmlns.oracle.com/coherence/
   coherence-operational-config coherence-operational-config.xsd">

注意:

  • coherence.jarライブラリにあるスキーマは、xsi:schemaLocation属性がWeb URLを参照する場合であっても、常に実行時に使用されます。

  • xsi:schemaLocation属性を省略すると、スキーマ検証を無効にできます。

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


A.2 オペレーション・オーバーライド・ファイル

操作設定の構成に推奨される方法は、オペレーション・オーバーライド・ファイルを使用することです。オーバーライド・ファイルのスキーマは、すべての要素がオプションであることを除き、オペレーション・デプロイメント・ディスクリプタと同一です。欠落している要素はすべてtangosol-coherence.xmlオペレーション・デプロイメント・ディスクリプタからロードされます。オーバーライド・ファイルのデフォルト名はtangosol-coherence-override.xmlです。実行時に、このファイルがクラスパス内のcoherence.jarライブラリの前に置かれている必要があります。

追加のオーバーライド・ファイルは、<coherence>要素内のxml-override属性を使用して構成できます。これにより、ステージングと本番など、類似のデプロイメント環境間で追加のチューニングが可能になります。この機能の例は、coherence.jar内のtangosol-coherence-override-eval.xmltangosol-coherence-override-dev.xmlおよびtangosol-coherence-override-prod.xmlの各ファイルを参照してください。xml-override属性の使用方法の詳細は、「属性リファレンス」を参照してください。

要素リファレンス

表A-1は、オペレーション構成のすべての非終端要素を示しています。

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

要素 使用場所

access-controller


security-config


address-provider


well-known-addressesaddress-providers

address-providers


cluster-config


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


filter


filters


filter


cluster-config


flashjournal-manager


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

instance


socket-provider、service-failure-policy

journaling-config


cluster-config


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


cluster-config


packet-size


packet-publisher


packet-speaker


cluster-config


pause-detection


flow-control


provider


sslidentity-managertrust-manager

ramjournal-manager


journaling-config


reporter


management-config


security-config


coherence


serializer


serializers


serializers


cluster-config


service-guardian


cluster-config


service


services


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

説明

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

要素

表A-2で、access-controller要素のサブ要素を説明します。

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

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

<class-name>

必須

com.tangosol.net.security.AccessControllerインタフェースを実装するJavaクラスの名前を指定します。セキュリティ・フレームワークはこれを使用してクラスタ化リソースのアクセス権をチェックしたり、これらの権限に関するノード間の通信を暗号化または復号化します。アクセス・コントローラの使用方法の詳細は、『Oracle 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になります。init-param要素のサブ要素の詳細は、「init-param」を参照してください。


address-provider

使用場所: well-known-addressesaddress-providers

説明

address-provider要素は、ソケット・アドレス情報(IPまたはDNS名およびポート)またはcom.tangosol.net.AddressProviderインタフェースの実装のいずれかを指定します。このインタフェースは、ソケット・アドレスをプログラムで定義する方法を提供します。

well-known-addresses要素内で、address-provider要素を使用して、com.tangosol.net.AddressProviderインタフェースを実装するアドレス・ファクトリを指定します。このインタフェースは、プログラムでWell Knownアドレス(WKA)メンバーを定義する方法を提供します。WKAの詳細は、「Well Knownアドレスの使用」を参照してください。次の例は、well-known-addresses要素内でのaddress-provider要素の使用方法を示しています。

<unicast-listener>
   <well-known-addresses>
      <address-provider>
         <class-name>package.MyAddressProvider</class-name>
      </address-provider>
   </well-known-addresses>
</unicast-listener>

address-providers要素内で、address-provider要素を使用して、ソケット・アドレスまたはcom.tangosol.net.AddressProviderインタフェースを実装するアドレス・ファクトリを指定します。アドレス・プロバイダ定義は、Coherence*Extendの設定に使用されるTCP/IPアクセプタおよびTCP/IPイニシエータによって参照されます。また、TCP/IPアクセプタもmemcachedクライアントで使用できます。

キャッシュ構成ファイルのtcp-acceptormemcached-acceptorremote-addressesおよびname-service-addresses要素は、指定されているid属性値を使用してアドレス・プロバイダ定義を参照します。tcp-acceptor要素の詳細は、「tcp-acceptor」を参照してください。memcached-acceptor要素の詳細は、「memcached-acceptor」を参照してください。remote-addresses要素の詳細は、「remote-addresses」を参照してください。name-service-addresses要素の詳細は、「name-service-addresses」を参照してください。次の例は、<address-providers>要素内でのアドレス・プロバイダ定義の定義方法を示しています。

<address-providers>
   <address-provider id="ap1">
      <class-name>package.MyAddressProvider</class-name>
   </address-provider>
   <address-provider id="ap2">
      <socket-address>
         <address>192.168.1.3</address>
         <port>9999</port>
      </socket-address>
   </address-provider>
   <address-provider id="ap3">
      <socket-address>
         <address>192.168.1.4</address>
         <port>9999</port>
      </socket-address>
   </address-provider>
</address-providers>

要素

表A-3で、address-provider要素のサブ要素を説明します。

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

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

<class-name>

オプション

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

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

<class-factory-name>

オプション

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

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

<method-name>

オプション

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

<init-params>

オプション

一致するシグネチャを持つpublicなコンストラクタが含まれる実装によってアクセス可能な初期化パラメータを指定します。初期化パラメータは、<class-name>要素と<class-factory-name>要素の両方を使用する場合に指定できます。

<socket-address>

オプション

ソケットがバインドされるアドレス(IPまたはDNS名およびポート)を指定します。

この要素は、TCP/IPアクセプタのソケット・アドレスを定義する場合にのみ使用してください。アドレス・プロバイダ実装が<class-name>または<class-factory-name>要素を使用して定義されている場合、この要素は使用できません。


address-providers

使用場所: cluster-config

説明

address-providers要素には、アドレス・プロバイダごとの宣言データを記述します。

要素

表A-4で、address-provider要素のサブ要素を説明します。

表A-4 address-providersのサブ要素

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

<address-provider>

オプション

ソケット・アドレス情報またはcom.tangosol.net.AddressProviderインタフェースの実装のいずれかを指定します。address-provider要素は複数指定できます。


authorized-hosts

使用場所: cluster-config

説明

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

要素

表A-5で、authorized-hosts要素のサブ要素を説明します。

表A-5 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を返す必要があります。


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-6で、cache-factory-builder-config要素のサブ要素を説明します。

表A-6 cache-factory-builder-configのサブ要素

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

<class-name>

オプション

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

<init-params>

オプション

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

<scope-resolver>

オプション

com.tangosol.net.ScopeResolverインタフェースを実装するクラスの構成情報を指定します。スコープ・リゾルバを実装すると、実行時に与えられたConfigurableCacheFactoryのスコープ名を変更し、同じクラスタで実行されているアプリケーション間の分離を有効(または無効)にできます。カスタム・スコープ・リゾルバの実装は、<class-nameサブ要素内で指定します。ScopeResolverインタフェースの詳細は、Oracle Coherence Java APIリファレンスを参照してください。

キャッシュ構成ファイル内でスコープ名を指定する方法の詳細は、<cache-config>要素の<scope-name>サブ要素を参照してください。


callback-handler

使用場所: security-config

表A-7で、callback-handler要素のサブ要素を説明します。

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

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

<class-name>

必須

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

<init-params>

オプション

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


cluster-config

使用場所: <coherence>

説明

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

要素

表A-8で、cluster-config要素のサブ要素を説明します。

表A-8 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を実装する任意の数のシリアライザ・クラス構成を指定します。

<address-providers>

オプション

プロキシ・サービスのTCP/IPアクセプタによって参照可能な任意の数のアドレス・プロバイダ定義を指定します。

<socket-providers>

必須

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

<cluster-quorum-policy>

オプション

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

<journaling-config>

オプション

ジャーナル・サブシステムの構成を指定します。


cluster-quorum-policy

使用場所: <cluster-config>

説明

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

要素

表A-9で、cluster-quorum-policy要素のサブ要素を説明します。

表A-9 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>要素と一緒には使用できません。

クラスは、com.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-10で、coherence要素のサブ要素を説明します。

表A-10 coherenceのサブ要素

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

<cluster-config>

必須

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

<logging-config>

必須

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

<configurable-cache-factory-config>

必須

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

<cache-factory-builder-config>

必須

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

<management-config>

必須

Coherenceの管理フレームワークの構成情報を記述します。詳細は、『Oracle Coherenceのマネージメント』を参照してください。

<security-config>

オプション

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

<license-config>

オプション

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


configurable-cache-factory-config

使用場所: coherence

説明

configurable-cache-factory-config要素には、com.tangosol.net.ConfigurableCacheFactoryインタフェースのインスタンスを作成するための構成情報を記述します。デフォルトの実装は、com.tangosol.net.ExtensibleConfigurableCacheFactoryクラスです。

カスタムのConfigurableCacheFactory実装の使用は高度な使用例で、通常、異なるクラス・ローダーによってスコープ設定されるアプリケーションが、異なるキャッシュ構成ファイルを使用できるようにするために使用されます(JavaEEおよびOSGIと同様)。

次の例では、異なるキャッシュ定義を含み、異なるClassLoadersを使用する2つの構成ファイルをロードします。

//load the first configuration and use a cache

ConfigurableCacheFactory  eccf= new
   ExtensibleConfigurableCacheFactory("example-config.xml", loader0);
NamedCache cache = eccf.ensureCache("dist-example", loader0);
cache.put(key, value);

//load the second cache configuration and use a cache

ConfigurableCacheFactory  eccf1= new
   ExtensibleConfigurableCacheFactory("example-config1.xml", loader1);
NamedCache cache1 = eccf1.ensureCache("dist-example1", loader1);
cache1.put(key, value);

注意:

この例では、各キャッシュ定義が異なるサービス名を使用する必要があります。そうしない場合、異なる構成ディスクリプタのファクトリによりサービスが開始されたことを示す例外がスローされます。

要素

表A-11で、configurable-cache-factory-config要素のサブ要素を説明します。

表A-11 configurable-cache-factory-configのサブ要素

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

<class-name>

必須

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

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.cachefactoryです。

<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です。


filter

使用場所: filters

説明

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

実装

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


注意:

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

要素

表A-12で、各filter要素のサブ要素を説明します。

表A-12 filterのサブ要素

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

<filter-name>

必須

フィルタの正規名を指定します。この名前はクラスタ内で一意です。例: gzip

<filter-class>

必須

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

<init-params>

オプション

フィルタを構成するための初期化パラメータを指定します。たとえば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>

標準的なフィルタのパラメータ値の詳細は、「ネットワーク・フィルタの使用」を参照してください。


filters

使用場所: cluster-config

説明

filters要素には、各フィルタの宣言データを記述します。

要素

表A-13で、filters要素のサブ要素を説明します。

表A-13 filtersのサブ要素

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

<filter>

オプション

filter要素には、特定のフィルタの宣言データを記述します。


flashjournal-manager

使用場所: journaling-config

説明

<flashjournal-manager>要素には、フラッシュ・ジャーナル・リソース・マネージャの構成が含まれており、これによって一時的なジャーナルベースのファイルからソリッド状態のデバイスへのI/Oが管理されます。

要素

表A-14で、flashjournal-manager要素のサブ要素を説明します。

表A-14 flashjournal-managerのサブ要素

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

<minimum-load-factor>

オプション

この値未満であれば、ジャーナル・ファイルが圧縮(ガベージ・コレクション)に適したものになる、ライブ・データ率を指定します。

<maximum-value-size>

オプション

フラッシュ・ジャーナルに格納されるバイナリ値の最大サイズをバイト単位で指定します。64MB以下の値を指定する必要があります。デフォルト値は64MBです。

<maximum-file-size>

オプション

基礎となるジャーナル・ファイルの最大ファイル・サイズを指定します。この値は2の累乗であり、ブロック・サイズの倍数である必要があります。値は、1MBと4GBの間である必要があり、最低2つの値をファイルに格納できるだけの大きさである必要があります。デフォルト値は2GBです。

<collector-timeout>

オプション

ジャーナル・コレクタが、タイムアウトと判断する前に待機する時間を指定します。タイムアウトの最小値は30sです。有効な値は、時間間隔を表す文字列です。デフォルト値は10mです。

<block-size>

オプション

書込みバッファがここで指定したサイズに達すると、基礎となるディスク・ファイルへの書き込みが発生します。このサイズは、物理デバイスの最適ブロック・サイズと一致するか、その倍数であり、2の累乗である必要があります。値は4KBから1MBの範囲にする必要があります。デフォルト値は256KBです。

<maximum-pool-size>

オプション

バッファ・プールのサイズをバイト単位で指定します。このサイズによって、割当て可能または特定の時点で存在可能なバッファの数が制限されることはありません。このサイズによって決まるのは、再利用されるバッファの数のみです。プールの最大サイズは1GBです。デフォルト値は16MBです。

<directory>

オプション

ジャーナル・ファイルを配置するディレクトリを指定します。既存のディレクトリを指定する必要があります。実行時には作成されません。ディレクトリが存在しないか、指定されていない場合は、JVMまたはオペレーティング・システムのデフォルトの一時ディレクトリが使用されます。推奨される場所は、ローカルのフラッシュ(SSD)ドライブです。

他のアプリケーションまたはシステム操作によって共有されているドライブ上にあるディレクトリを指定すると、予定外の領域使用量になる可能性が高くなります。より予測可能な環境を確保するために、共有されていないディスク・パーティション上のディレクトリを使用してください。

<async-limit>

オプション

バックログの最大サイズをバイト単位で指定します。バックログは、まだ永続化されていないデータの量です。クライアント・スレッドは、指定されている制限を超えるとブロックされ、バックログが制限を下回るまでブロックされたままになります。これは、メモリー不足の状態を回避するのに役立ちます。注意: バックログで使用するメモリーの最大容量は、指定されている容量の2倍以上にする必要があります。これは、データがバイナリ形式であり、ライトビハインド・バッファにレンダリングされるからです。値は4KBから1GBの範囲にする必要があります。デフォルト値は16MBです。

<tmp-purge-delay>

オプション

ジャーナル・サブシステムによって使用されている一時ファイルが削除に適したものになるまでの待機時間を指定します。この遅延は、ファイルが最後に使用された後に開始されます。デフォルト値は2時間です。

<high-journal-size>

オプション

ジャーナル・サイズまたはフラッシュ・ジャーナル容量のパーセンテージに、バイト単位で弱い制限を指定します。弱い制限では、圧縮(ガベージ・コレクション)スレッドが自己調整して、失効している値を削除し、ジャーナルをその制限以内に保ちます。これは、強い制限ではなく、ジャーナルは依然として最大ファイル数(512)まで大きくなることができます。デフォルト値は11GBです。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.flashjournal.highjournalsizeです。

<writer-timeout>

オプション

ジャーナル・ライターが、タイムアウトと判断する前に待機する時間を指定します。タイムアウトの最小値は30sです。有効な値は、時間間隔を表す文字列です。デフォルト値は8hです。

(writer-timeout値に達した後で)ライターに障害が発生した場合、そのメンバーが再起動されるまでジャーナルは読取り専用になります。(async-limit値で設定されている)書込みバックログの最大値に達した場合、ジャーナルは、書込みが解決されるまでまたはwriter-timeoutを超えた場合は無制限に、その後の格納リクエストに対して例外で応答します。


flow-control

使用場所: packet-delivery

説明

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

要素

表A-15で、flow-control要素のサブ要素を説明します。

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

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

<enabled>

オプション

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

<pause-detection>

オプション

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

<outstanding-packets>

オプション

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


host-range

使用場所: authorized-hosts

説明

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

要素

表A-16で、各host-range要素のサブ要素を説明します。

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

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

<from-address>

必須

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

<to-address>

必須

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


identity-asserter

使用場所: security-config

説明

<identity-asserter>要素には、com.tangosol.net.security.IdentityAsserterインタフェースを実装するクラスの構成情報を記述します。このクラスは、ユーザーのIDを確立するためIDトークンを検証する際にコールされ、Coherence*Extendプロキシ・サーバーで使用されます。IDアサーション・プロバイダが(Coherence*Extendクライアント上で使用される)IDトランスフォーマとともに使用され、有効なクライアントのみが拡張プロキシに接続できるようにします。

要素

表A-17で、<identity-asserter>要素のサブ要素を説明します。

表A-17 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-18で、identity-manager要素のサブ要素を説明します。

表A-18 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-19で、<identity-transformer>要素のサブ要素を説明します。

表A-19 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-20で、incoming-message-handler要素のサブ要素を説明します。

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

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

<maximum-time-variance>

必須

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

<use-nack-packets>

必須

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

<priority>

必須

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


init-param

使用場所: init-params

説明

初期化パラメータを定義します。任意の数のinit-param要素を指定できます。

要素

表A-21で、init-param要素のサブ要素を説明します。

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

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

<param-name>

オプション

初期化パラメータの名前を指定します。例:

<init-param>
   <param-name>sTableName</param-name>
   <param-value>EmployeeTable</param-value>
</init-param>

<param-type>要素が指定されている場合は、<param-name>要素は指定できません。特定のサービスで使用できる事前定義のパラメータの詳細は、「初期化パラメータの設定」を参照してください。

<param-type>

オプション

初期化パラメータのJavaタイプを指定します。次の標準タイプがサポートされています。

  • java.lang.String (string)

  • java.lang.Boolean (boolean)

  • java.lang.Integer (int)

  • java.lang.Long (long)

  • java.lang.Double (double)

  • java.math.BigDecimal

  • java.io.File

  • java.sql.Date

  • java.sql.Time

  • java.sql.Timestamp

例:

<init-param>
   <param-type>java.lang.String</param-type>
   <param-value>EmployeeTable</param-value>
</init-param>

<param-name>要素が指定されている場合は、<param-type>要素は指定できません。

<param-value>

必須

初期化パラメータの値を指定します。この値は、パラメータのJavaタイプに固有の形式にします。

<description>

オプション

初期化パラメータの説明を指定します。


init-params

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

説明

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

要素

表A-22で、init-params要素のサブ要素を説明します。

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

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

<init-param>

オプション

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


instance

使用場所: service-failure-policy、scope-resolverおよびpartition-assignment-strategy

説明

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

要素

表A-23で、instance要素のサブ要素を説明します。

表A-23 instanceのサブ要素

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

<class-name>

オプション

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

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

<class-factory-name>

オプション

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

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

<method-name>

オプション

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

<init-params>

オプション

一致するシグネチャを持つpublicなコンストラクタが含まれる実装によってアクセス可能な初期化パラメータを指定します。初期化パラメータは、<class-name>要素と<class-factory-name>要素の両方を使用する場合に指定できます。


journaling-config

使用場所: cluster-config

説明

<journaling-config>要素には、フラッシュおよびRAMメモリーにバイナリ形式でデータを格納する役割を持つリソース・マネージャの構成が含まれます。

要素

表A-23で、journaling-config要素のサブ要素を説明します。

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

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

<ramjournal-manager>

必須

RAMジャーナル・リソース・マネージャの構成を指定します。

<flashjournal-manager>

必須

フラッシュ・ジャーナル・リソース・マネージャの構成を指定します。


key-store

使用場所: identity-managertrust-manager

説明

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

要素

表A-25で、key-store要素のサブ要素を説明します。

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

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

<url>

必須

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

<password>

オプション

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

<type>

オプション

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


license-config

使用場所: coherence

表A-26で、license-config要素のサブ要素を説明します。

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

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

<edition-name>

オプション

メンバーが使用する製品のエディションを指定します。有効な値は、GE (Grid Edition)、EE (Enterprise Edition)、SE (Standard Edition)、RTC (Real-Time Client)、DC (Data Client)です。デフォルト値はGEです。

注意: エディションの切替えによってライセンスの制限が適用されることはなくなりました。デフォルトの設定(GE)を変更しないでください。

<license-mode>

オプション

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


logging-config

使用場所: coherence

要素

次の表で、logging-config要素のサブ要素を説明します。

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

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

<destination>

必須

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

  • stdout

  • stderr(デフォルト)

  • jdk

  • log4j

  • slf4j

  • file name

log4jが指定されている場合、Log4jライブラリがクラスパスに存在する必要があります。どちらの場合でも、適切なロギング構成メカニズム(システム・プロパティやプロパティ・ファイルなど)がJDK/Log4jロギング・ライブラリの構成に必要です。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.logです。

<logger-name>

オプション

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

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.log.loggerです。

<severity-level>

必須

どのログ・メッセージをログ出力先に出力するかを指定します。有効な値は-1から9です。-1を指定した場合、メッセージは出力されません。ログ・レベルを上げると、より多くのログ・メッセージが出力されます。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.log.levelです。

<message-format>

必須

ログ出力先に渡す前に、ロギング・レベルが指定されたメッセージをフォーマットする方法を指定します。このフォーマットには、静的テキストおよび{date}{uptime}{product}{version}{level}{thread}{member}{location}{role}{text}および{ecid}のいずれかの置換可能なパラメータを含めることができます。デフォルト値は次のとおりです。

{date}/{uptime} {product} {version} &lt;{level}&gt; (thread={thread}, member={member}): {text}

<character-limit>

必須

ロガー・デーモンがメッセージ・キューから処理する文字の最大数を指定します。この数を超過すると、キューに残っているメッセージがすべて破棄されます。破棄されたメッセージはすべて、ロギング・システムによって、破棄されたメッセージの数と合計サイズの詳細を説明する1つのログ・エントリでまとめられます。有効な値は、正の整数または0です。ゼロは制限がないことを示します。製品モードのデフォルト値は1048576、開発モードのデフォルト値は2147483647です。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.log.limitです。


management-config

使用場所: coherence

要素

表A-28で、management-config要素のサブ要素を説明します。

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

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

<managed-nodes>

必須

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

  • none - (デフォルト)このクラスタ・ノードにはMBeanサーバーがインストールされていません。

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

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

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

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.managementです。

<allow-remote-management>

必須

このクラスタ・ノードで、管理オブジェクトをリモートのMBeanサーバーに公開するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はtrueです。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.management.remoteです。

<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です。

<default-domain-name>

オプション

Coherence管理フレームワークにより公開されるMBeanを登録するために使用される既存のMBeanサーバーのドメイン名を指定します。この要素は、クラスタ・メンバーで管理が有効化されていて、MBeanサーバーがクラスタ・メンバーと同じプロセス内にある場合にのみ使用できます。値が指定されていない場合、最初の既存のMBeanサーバーが使用されます。この要素は、既存のMBeanサーバーを識別するためにのみ使用してください。

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

<service-name>

オプション

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

<server-factory>

オプション

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

<mbeans>

オプション

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

<mbean-filter>

オプション

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

<reporter>

オプション

Reporterの構成を記述します。

<extended-mbean-name>

オプション

nodeId属性で識別されるグローバルMBean名を拡張して、対応するメンバー名(指定された場合)を識別するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseで、グローバルMBean名にメンバー名が含まれないことを示します。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.management.extendedmbeannameです。


mbean

使用場所: mbeans

説明

mbean要素には、Coherence管理フレームワークでインスタンス化および登録される要素のリストを記述します。

要素

表A-29で、mbean要素のサブ要素を説明します。

表A-29 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-server-domain>

オプション

ソースMBeanサーバーのデフォルト・ドメインの名前を指定します。これは、mbean-queryを実行する必要のあるMBeanサーバーを見つけるために使用されます。

<mbean-accessor>

オプション

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

<mbean-name>

必須

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

<local-only>

オプション

MBeanをクラスタ全体で参照可能にするかどうかを指定します。有効な値は、trueまたはfalseです。trueに設定されていると、MBeanはローカルのMBeanサーバーにのみ登録され、他のクラスタ・ノードからはアクセスできません。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-30で、mbeans要素のサブ要素を説明します。

表A-30 mbeansのサブ要素

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

<mbean>

必須

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


mbean-filter

使用場所: management-config

説明

mbean-filter要素は、MBeanサーバーに登録する前にMBean名を評価するフィルタの指定に使用します。com.tangosol.net.management.ObjectNameExcludeFilterクラスはデフォルトのフィルタで、標準のRegexパターンを使用するJMXオブジェクト名に基づいて、MBeanが登録されないように除外する場合に使用します。リストは、空白文字により区切られた名前のリストとして入力されます。次のMBeanは、初期状態の構成では除外されています。

<management-config>
   <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>
</management-config>

要素

表A-44で、mbean-filter要素のサブ要素を説明します。

表A-31 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-32で、member-identity要素のサブ要素を説明します。

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

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

<cluster-name>

オプション

cluster-name要素には、クラスタの名前を記述します。クラスタに参加するには、すべてのメンバーで同じクラスタ名を指定する必要があります。本番システムでは必ずクラスタ名を指定して、アプリケーション間の不慮のクラスタ検出を回避してください。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.clusterです。

<site-name>

オプション

site-name要素には、メンバーがホストされる地理上のサイトの名前を記述します。WANによるクラスタリングでは、メンバーが配置されるデータセンターをこの値で特定します。サイト名は、高度なルーティング、ロード・バランシングおよび障害時リカバリ計画(地理的に別のサイトにあるデータの明示的なバックアップ)の基盤として使用できます。サイト名は、分散キャッシングおよびデフォルト・パーティション割当て戦略を使用している場合にデータのバックアップ先を決定するために役立ちます。最後に、この名前は、管理情報(例、JMX)の表示およびログ・エントリの解釈にも有用です。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.siteです。

<rack-name>

オプション

rack-name要素には、メンバーがホストされている地理的サイト内の場所の名前を記述し、多くの場合、ケージ、ラックまたはブレードフレームの識別子です。ラック名は、高度なルーティング、ロード・バランシングおよび障害時リカバリ計画(別のブレードフレームにあるデータの明示的なバックアップ)の基盤として使用できます。ラック名は、分散キャッシングおよびデフォルト・パーティション割当て戦略を使用している場合にデータのバックアップ先を決定するために役立ちます。最後に、この名前は、管理情報(例、JMX)の表示およびログ・エントリの解釈にも有用です。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.rackです。

<machine-name>

オプション

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

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.machineです。

<process-name>

オプション

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

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.processです。

<member-name>

オプション

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

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.memberです。

<role-name>

オプション

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

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.roleです。

<priority>

オプション

priority要素は、対応するメンバーの優先度を指定します。優先度は、メンバー間の優劣を決定する基準に使用されます。2つのメンバーのいずれかをクラスタから排除する状況が発生した場合、まれなケースですが 2つのいずれに障害があって排除すべきかを客観的に判断できないときは、優先度の低いメンバーが排除されます。有効な値は1から10で、10が最も高い優先度です。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.priorityです。


multicast-listener

使用場所: cluster-config

説明

マルチキャスト・リスナーの構成情報を指定します。この要素は、クラスタ全体およびPoint-to-Pointの通信のためにクラスタで使用するアドレスおよびポートを指定するために使用します。クラスタ内のノードはすべて、同じマルチキャスト・アドレスおよびポートを使用する必要があります。同じネットワークの別のクラスタは、別のマルチキャスト・アドレスを使用する必要があります。マルチキャストを使用する際のクラスタの構築に問題がある場合は、『Oracle Coherenceの管理』でマルチキャスト接続テストの実行方法を参照してください。

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

デフォルトでは、クラスタの形成時に他のノードを検出するためにマルチキャスト・プロトコルが使用されます。マルチキャスト・ネットワーキングが適さない場合、または環境内で使用できない場合には、well-known-addresses機能を使用するとマルチキャスト・トラフィックを使用する必要がなくなります。

要素

表A-33で、multicast-listener要素のサブ要素を説明します。

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

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

<interface>

オプション

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

<address>

必須

ソケットがリスニングまたは公開を行うマルチキャストIPアドレスを指定します。有効な値は224.0.0.0から239.255.255.255です。デフォルト値は、リリースおよびビルド・レベルによって異なり、一般的に{build}.{major version}.{minor version}.{patch}という表記規則に従います。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.clusteraddressです。

<port>

必須

ソケットがリスニングまたは公開を行うポートを指定します。有効な値は1から65535です。デフォルト値は、リリースおよびビルド・レベルによって異なり、一般的に{version}+{{{build}という表記規則に従います。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.clusterportです。

<time-to-live>

必須

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

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.ttlです。

<packet-buffer>

必須

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

<priority>

必須

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

<join-timeout-milliseconds>

必須

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

注意: 本番で使用する場合、推奨値は30000です。

<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以上の場合はマルチキャストを使用して送信されます。

有効な値は1から100です。デフォルト値は25です。

注意: この要素はwell-known-addresses要素が空の場合にのみ使用されます。


notification-queueing

使用場所: packet-publisher

説明

notification-queueing要素は、他のクラスタ・ノードに送信される通知パケットのタイミングを指定するために使用します。通知パケットは、確認が要求されているパケットを受信したことの肯定応答に使用されます。

要素

次の表で、notification-queuing要素のサブ要素を説明します。

表A-34 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-35で、outgoing-message-handler要素のサブ要素を説明します。

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

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

<use-filters>

オプション

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


outstanding-packets

使用場所: flow-control

説明

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

要素

表A-36で、outstanding-packets要素のサブ要素を説明します。

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

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

<maximum-packets>

オプション

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

<minimum-packets>

オプション

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


packet-buffer

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

説明

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

要素

表A-37で、packet-buffer要素のサブ要素を説明します。

表A-37 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つの大きなパケットにバンドルする操作に関連する構成情報を記述します。

要素

表A-38で、packet-bundling要素のサブ要素を説明します。

表A-38 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

説明

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

要素

表A-39で、packet-delivery要素のサブ要素を説明します。

表A-39 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-publisher

使用場所: cluster-config

説明

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

信頼性のあるパケット配信

パケット・パブリッシャは、送信したパケットが送信先のクラスタ・ノードに確実に届くように管理します。パブリッシャは肯定応答を待つ一連のパケットを保持し、ACKがpacket-delivery再送信タイムアウトまでに届かない場合、そのパケットは再送信されます(<packet-delivery>サブ要素を参照)。受信側ノードはACKを遅延して、一連のACKを1つのレスポンスにバッチ化します(<notification-queuing>サブ要素を参照)。

要素

表A-40で、packet-publisher要素のサブ要素を説明します。

表A-40 packet-publisherのサブ要素

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

<packet-size>

オプション

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

<packet-delivery>

必須

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

<notification-queueing>

必須

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

<traffic-jam>

必須

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

<packet-buffer>

必須

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

<priority>

必須

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

<enabled>

オプション

TCMPクラスタリングを有効にするかどうかを指定します。Coherence*ExtendベースとCoherence TCMPベース両方のクラスタリングを使用している場合、この機能を使用してTCMPを無効化し、ノードがExtendプロトコルのみを使用して接続するようにできます。有効な値は、truefalseです。デフォルト値はtrueです。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.tcmp.enabledです。


packet-size

使用場所: packet-publisher

説明

packet-size要素は、UDPパケットの最大サイズと最適サイズを指定します。クラスタ・ノードは、いずれも同一の最大パケット・サイズを使用する必要があります。

要素

表A-41で、packet-size要素のサブ要素を説明します。

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

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

<maximum-length>

必須

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

<preferred-length>

必須

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

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


packet-speaker

使用場所: cluster-config

説明

パケット・パブリッシャの負荷が高い場合、ネットワーク・データ転送に使用するパケット・スピーカーの構成情報を指定します。

要素

表A-42で、packet-speaker要素のサブ要素を説明します。

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

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

<enabled>

オプション

packet-speakerスレッドを有効化するかどうかを指定します。有効な値は、truefalseです。デフォルト値はtrueです。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.speaker.enabledです。

<volume-threshold>

オプション

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

<priority>

必須

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


pause-detection

使用場所: flow-control

説明

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

要素

表A-43で、pause-detection要素のサブ要素を説明します。

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

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

<maximum-packets>

オプション

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


provider

使用場所: sslidentity-managertrust-manager

説明

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

要素

表A-44で、provider要素のサブ要素を説明します。

表A-44 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>要素と一緒には使用できません。


ramjournal-manager

使用場所: journaling-config

説明

<ramjournal-manager>要素には、RAMジャーナル・リソース・マネージャの構成を記述します。これは、ジャーナルベースのストレージのメモリー・バッファをメモリー内で管理します。RAMジャーナル・リソース・マネージャは、常にフラッシュ・ジャーナル・リソース・マネージャを使用してラージ・オブジェクトを格納し、RAMジャーナルに割り当てられている合計メモリー量に達したときにはオーバーフローとしても使用されます。RAMジャーナルでは、ジャーナルのガベージ・コレクションが一時的に要求に従うことができない場合にも、フラッシュ・ジャーナルを使用します。フラッシュ・ジャーナル・リソース・マネージャの構成の詳細は、「flashjournal-manager」を参照してください。

要素

表A-45で、ramjournal-manager要素のサブ要素を説明します。

表A-45 ramjournal-managerのサブ要素

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

<minimum-load-factor>

オプション

この値未満であれば、ジャーナル・ファイルが圧縮(ガベージ・コレクション)に適したものになる、ライブ・データ率を指定します。

<maximum-value-size>

オプション

RAMジャーナルに格納するバイナリ値の最大サイズをバイト単位で指定します。4MB以下の値を指定する必要があります。デフォルト値は64KBです。

最大値サイズを超えるバイナリ値は、自動的にフラッシュ・ジャーナルに委任されます。

<maximum-file-size>

オプション

基礎となるジャーナル・ファイルの最大ファイル・サイズを指定します。この値は2の累乗であり、ブロック・サイズの倍数である必要があります。値は2MBから2GBの範囲にする必要があります。デフォルト値は2MBです。最大ファイル・サイズは変更しないでください。

<collector-timeout>

オプション

ジャーナル・コレクタが、タイムアウトと判断する前に待機する時間を指定します。タイムアウトの最小値は30sです。有効な値は、時間間隔を表す文字列です。デフォルト値は10mです。

<maximum-size>

オプション

ジャーナルで使用するRAMの最大量を指定します。この値は、使用可能なヒープの最大量の割合として、または特定のメモリー量として指定できます。値にパーセント記号(%)が含まれている場合は、JVM最大ヒープの割合として解釈されます(JVM最大ヒープは通常、Javaコマンド行で-Xmx引数によって指定します)。特定のメモリー量として指定する場合、この値は16MBから64GBの間で指定する必要があります。デフォルト値は25です。つまり、RAMジャーナル・リソース・マネージャでは、最大で、使用可能なJVMヒープの25%を使用するということです。RAMジャーナルは常にフラッシュ・ジャーナルによってバッキングされ、最大RAMサイズを超えているデータはすべて、自動的にフラッシュ・ジャーナルに委任されます。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.ramjournal.sizeです。

<off-heap>

オプション

仮想マシンのバイト・バッファとヒープ外NIOバッファのどちらで使用するのかを指定します。


reporter

使用場所: management-config

説明

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

要素

表A-46で、reporter要素のサブ要素を説明します。

表A-46 reporterのサブ要素

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

<configuration>

必須

レポート・グループ・デプロイメント・ディスクリプタの場所を指定します。デフォルト・ファイルはreports/report-group.xmlで、coherence.jarライブラリにあります。

<autostart>

必須

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

<distributed>

必須

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

<timezone>

オプション

レポート内に表示するタイムスタンプのタイムゾーンを指定します。サポートされるタイムゾーン書式の詳細は、java.util.TimeZoneを参照してください。タイムゾーンが指定されていない場合のデフォルトは、ローカルのタイムゾーンです。

<timeformat>

オプション

レポート内に表示するタイムスタンプの日時の書式を指定します。java.text.SimpleDateFormatクラスでサポートされているパターンの値を指定する必要があります。デフォルト値はEEE MMM dd HH:mm:ss zzz yyyyです。


security-config

使用場所: coherence

要素

表A-47で、security-config要素のサブ要素を説明します。

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

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

<enabled>

必須

アクセス・コントローラ・セキュリティ機能が有効かどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.securityです。

<login-module-name>

必須

コール元の認証に使用するJAAS LoginModuleの名前を指定します。この名前は、JAASで使用される構成ファイルのモジュールと一致している必要があります(-Djava.security.auth.login.config Javaコマンド行属性などを使用して指定されます)。詳細は、Oracleログイン・モジュール開発者ガイドを参照してください。

<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です。

<authorizer>

オプション

コール元が対応する権限オブジェクトによって記述されるアクションを実行することを認可するための環境固有の機能を表すcom.tangosol.net.security.Authorizerインタフェースを実装するクラスの構成情報を記述します。クラスを入力するには<instance>要素を使用します。


serializer

使用場所: serializers

説明

serializer要素には、シリアライザ・クラス構成を記述します。シリアライザ・クラスはcom.tangosol.io.Serializerを実装する必要があります。JavaシリアライザとPOFシリアライザが事前に定義されています。

<cluster-config>
   <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>
</cluster-config>

シリアライザの定義は、個々のキャッシュ・スキーム定義で参照され(「serializer」を参照)、また明示的にシリアライザを定義しないサービスのデフォルト・シリアライザでも参照されます(「defaults」を参照)。

必要に応じて、オペレーション・オーバーライド・ファイルで追加のシリアライザを定義できます。

要素

表A-48で、serializer要素のサブ要素を説明します。

表A-48 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>

オプション

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


serializers

使用場所: cluster-config

説明

serializers要素には、各シリアライザの宣言データを記述します。

要素

表A-49で、serializers要素のサブ要素を説明します。

表A-49 serializersのサブ要素

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

<serializer>

オプション

特定のシリアライザの宣言データを指定します。


service

使用場所: services.

説明

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

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

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

  • PartitionedService.PartitionedCache: サービスを実行する複数のクラスタ・ノードにわたって、キャッシュ・エントリを均一にパーティション化するキャッシュ・サービス。このサービスは、多くの場合、分散キャッシュ・サービスと呼ばれます。

  • ReplicatedCache: サービスを実行する全クラスタ・ノードの全キャッシュ・エントリのコピーを保持するキャッシュ・サービス。

  • ReplicatedCache.Optimistic: 最適なロックを使用するReplicatedCacheのバージョン。

  • SimpleCache: 並行処理制御なしのReplicatedCacheのバージョン。

  • LocalCache: すべてのキャッシュ・エントリが1つのクラスタ・ノードに存在するキャッシュのキャッシュ・サービス。

  • InvocationService: リモート・クラスタ・ノードでのカスタム操作の実行に使用されるサービス。

  • ProxyService: Coherence*Extendクライアントからの接続を受け入れるサービス。

  • RemoteCache—キャッシュ操作をCoherence*Extendクライアントからクラスタ上のキャッシュにルーティングするサービスです。

  • RemoteInvocation—キャッシュ呼出しタスクをCoherence*Extendクライアントからクラスタ上のキャッシュにルーティングするサービスです。

  • NameService—このサービスは特殊化されたTCPアクセプタで、Coherence*Extendクライアントでは、プロキシ・サービス・アドレスではなく、プロキシ・サービス名を指定することでプロキシに接続できます。

  • RemoteNameService— JVMがクラスタに参加せずにリモートNameServiceを使用できるようにするNameServiceの実装です。

要素

表A-50で、services要素のサブ要素を説明します。

表A-50 serviceのサブ要素

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

<service-type>

必須

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

<service-component>

必須

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

  • PartitionedService.PartitionedCache (DistributedCache)

  • ReplicatedCache

  • ReplicatedCache.Optimistic

  • SimpleCache

  • LocalCache

  • InvocationService

  • ProxyService

  • RemoteCache

  • RemoteInvocation

  • NameService

<use-filters>

オプション

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

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

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

<init-params>

オプション

各サービスに固有の初期化パラメータを指定します。各パラメータの説明を次に示します。


初期化パラメータの設定

サービスの初期化パラメータは、Coherenceのオペレーション構成デプロイメント・ディスクリプタの<init-param>要素によって定義されます。init-paramの下に表示されるパラメータは、サービスによって異なります。

次の各項では、各サービスに構成可能なパラメータについて説明します。

各項の表では、各サービスに構成可能な具体的な<param-name><param-value>のペアについて説明します。「パラメータ名」列には<param-name>要素の値が、「パラメータ値の説明」列には対応する<param-value>要素に対する可能な値が示されています。

DistributedCacheサービスのパラメータ

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

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

パラメータ名 パラメータ値の説明

lease-granularity

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

  • thread (default)

  • member

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

partition-count

分散キャッシュ・パーティションの数を指定します。分散キャッシュ・サービスを実行している記憶域が有効なクラスタ・メンバーはそれぞれ均等な数のパーティションを管理します。

有効な値は、1と32767の間の正の整数で、素数にする必要があります。デフォルト値は257パーティションです。詳細は、「パーティションの数の変更」を参照してください。

local-storage

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

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

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.distributed.localstorageです。

transfer-threshold

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

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.distributed.transferです。

backup-count

パーティション・キャッシュ・サービスのうち、各保存単位のバックアップ・データをキャッシュに保持するメンバーの数を指定します。デフォルト値は1です。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.distributed.backupcountです。

thread-count

パーティション・キャッシュ・サービスで使用されるデーモン・スレッドの数を指定します。有効な値は、正の整数、0または-1です。値0は、すべての関連するタスクがそのサービス・スレッドで実行されることを示します。値-1は、可能な場合はタスクがコール元のスレッドで実行されることを示します。デフォルト値は0です。

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

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.distributed.threadsです。

key-associator

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

key-partitioning

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

partition-listener

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

task-hung-threshold

タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。

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

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.distributed.task.hungです。

task-timeout

サービス・ワーカー・スレッド上で実行するリクエストのタイムアウト値をミリ秒単位で指定します。この属性は、スレッド・プールが使用されている(thread-count値が正の)場合にのみ適用され、PriorityTaskインタフェースを実装するエントリ・プロセッサ実装にのみ適用されます。タスク実行時間はサーバー側で測定され、開始されるまでサービス・バックログ・キューで待機するための所要時間は含まれません。有効な値は、正の整数またはゼロです。ゼロを指定すると、service-guardianのデフォルトの<timeout-milliseconds>値が使用されます。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.distributed.task.timeoutです。

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です。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.distributed.timeoutです。

serializer

オブジェクト・シリアライゼーション用のシリアライザ・クラスを指定します。シリアライザ・クラスはcom.tangosol.io.Serializerインタフェースを実装する必要があります。シリアライザの指定に最適な方法は、グローバルなserializer要素内で定義してから、キャッシュ構成ファイル内でキャッシュ用に構成することです。

backup-count-after-
writebehind

ライトビハインドを必要としないキャッシュ内の各保存単位のバックアップ・データ(つまり、クラスタ全体がシャットダウンしても失われにくいデータ)を保持する、パーティション・キャッシュ・サービスのメンバー数を指定します。ライトビハインドが必要とマークされている保存単位は、backup-countパラメータで指定されているメンバー数でバックアップされます。ライトビハインドが必要とマークされていない保存単位は、backup-count-after-writebehindパラメータで指定されているメンバー数でバックアップされます。

この要素の値は0に設定するか、要素の指定を完全に省略する必要があります。論理的な根拠として、このデータは別のデータ・ストアにバックアップされるため、書込み対象のライトビハインド・キューにデータが一時的に配置される場合を除いて、メモリー内でのバックアップは必要ありません。値0は、ライトビハインドが発生した場合に、そのデータのバックアップ・コピーが破棄されることを意味します。ただし、ライトビハインドが発生するまでは、backup-countパラメータに従ってデータがバックアップされます。

推奨値は0です。

guardian-timeout

サービスおよび依存するスレッドをガードするために使用するガーディアンのタイムアウト値を指定します。パラメータが指定されていない場合、デフォルトのガーディアンのタイムアウト(<timeout-milliseconds>オペレーション構成要素で指定)が使用されます。すべてのサービスに関してサービス・ガーディアンをグローバルに構成する方法の詳細は、service-guardian要素を参照してください。

この要素の値は、次の形式で指定する必要があります。

(\d)+((.)(\d)+)?[MS|ms|S|s|M|m|H|h|D|d]?

前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.distributed.guard.timeoutです。

service-failure-policy

動作が異常なサービス・スレッドをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。すべてのサービスに関してサービス・ガーディアンをグローバルに構成する方法の詳細は、service-guardian要素を参照してください。

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

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

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

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

  • カスタム・クラス - com.tangosol.net.ServiceFailurePolicy実装のクラス構成情報です。

member-listener

com.tangosol.net.MemberListenerインタフェースを実装するクラスの構成情報を指定します。実装には、publicなデフォルト・コンストラクタが必要です。

MemberListener実装は、キャッシュ・サービス・ライフサイクル・イベントを受信します。member-listenerは、サービスでMapListenerをプログラムによって追加するための代替手段として使用されます。

partitioned-quorum-
policy-scheme

パーティション・キャッシュ・サービス用のクォーラム・ポリシー設定を指定します。「partitioned-quorum-policy-scheme」を参照してください。

partition-assignment-
strategy

パーティション・サービスでパーティション分散を管理する際に使用する戦略を指定します。

  • legacy - (非推奨)レガシー割当て戦略では、パーティション分散は各クラスタ・メンバーで個々に管理されます。

  • simple - (デフォルト)単純な割当て戦略は、マシンの安全性を確保しながらパーティション分散のバランスを取ることを試み、レガシー戦略よりも決定論的で効率的です。

  • mirror:<service-name> – ミラー割当て戦略は、サービスのパーティションを、指定されたサービスのパーティションと共存させることを試みます。この戦略は、キーを関連付けられたクロスサービス・キャッシュ・アクセスがメンバーに対してローカルのままになる可能性を高めるために使用されます。

  • custom - com.tangosol.net.partition.PartitionAssignmentStrategyインタフェースを実装するクラス。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.distributed.assignmentstrategyです。

compressor

バックアップ更新をデルタ形式で圧縮するか、全体を送信するかを指定します。デルタ更新は、バックアップ・エントリの一部を表しており、プライマリ・エントリと同期させるには変更が必要です。有効な値は次のとおりです。

  • none (デフォルト) - デルタ・バックアップを無効にします。コンプレッサは使用されません。プライマリ・エントリが変更されると、バックアップ・バイナリ・エントリ全体が置換されます。

  • standard - パーティション・サービスで使用されているシリアライザに基づいて、デルタ・コンプレッサを自動的に選択します。

  • com.tangosol.io.DeltaCompressorインタフェースを実装するクラスの完全修飾名。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.distributed.compressorです。

service-priority

サービス・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は10です。

event-dispatcher-priority

各サービスのイベント・ディスパッチャ・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は10です。

worker-priority

ワーカー・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は5です。

reliable-transport

信頼性の高いポイントツーポイント通信を実現するためにこのサービスで使用されるトランスポート・プロトコルを指定します。<unicast-listener>要素で定義される共有トランスポート・インスタンスではなく、サービス固有のトランスポート・インスタンスを使用することを示す値を指定します。サービス固有のトランスポート・インスタンスを使用すると、パフォーマンスは向上しますが、リソース消費が増加するため、優先度の高い重要なサービスではあまり使用されません。一般に、共有トランスポート・インスタンスはサービス固有のトランスポート・インスタンスよりもリソース使用量が少なくてすみます。有効な値は次のとおりです。

  • datagram (デフォルト) – UDPプロトコル

  • tmb – TCP/IPメッセージ・バス・プロトコル

  • tmbs – SSL対応TCP/IPメッセージ・バス・プロトコル。TMBSには、SSLソケット・プロバイダの使用が必要です。「socket-provider」を参照してください。

  • sdmb – ソケット・ダイレクト・プロトコル(SDP)メッセージ・バス。SDMBは、Oracle Exalogicシステムでのみ使用できます。

  • sdmbs – SSL対応SDPメッセージ・バス。SDMBSはOracle Exalogicシステムでのみ使用でき、SSLソケット・プロバイダの使用が必要です。「socket-provider」を参照してください。

  • imb (Exalogicのデフォルト) – InfiniBandメッセージ・バス。IMBはOracle Exalogicシステムでのみ使用でき、TCMPがSSLとあわせて構成されていないかぎり自動的に使用されます。

デフォルト値は、<unicast-listener>要素の<reliable-transport>サブ要素で構成される共有トランスポート・インスタンスです。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.distributed.transport.reliableです。

async-backup

パーティション(分散)キャッシュ・サービスが、クライアントに同時に応答する際に、変更を非同期にバックアップするかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.distributed.asyncbackupです。



ReplicatedCacheサービスのパラメータ

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

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

パラメータ名 パラメータ値の説明

standard-lease-
milliseconds

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

lease-granularity

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

  • thread (default)

  • member

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

mobile-issues

リースの問題を最新のロック・ホルダーに転送するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。

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です。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.replicated.request.timeoutです。

serializer

オブジェクト・シリアライゼーション用のシリアライザ・クラスを指定します。シリアライザ・クラスはcom.tangosol.io.Serializerインタフェースを実装する必要があります。シリアライザの指定に最適な方法は、グローバルなserializer要素内で定義してから、キャッシュ構成ファイル内でキャッシュ用に構成することです。

guardian-timeout

サービスおよび依存するスレッドをガードするために使用するガーディアンのタイムアウト値を指定します。パラメータが指定されていない場合、デフォルトのガーディアンのタイムアウト(<timeout-milliseconds>オペレーション構成要素で指定)が使用されます。すべてのサービスに関してサービス・ガーディアンをグローバルに構成する方法の詳細は、service-guardian要素を参照してください。

この要素の値は、次の形式で指定する必要があります。

(\d)+((.)(\d)+)?[MS|ms|S|s|M|m|H|h|D|d]?

前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.replicated.guard.timeoutです。

service-failure-policy

動作が異常なサービス・スレッドをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。すべてのサービスに関してサービス・ガーディアンをグローバルに構成する方法の詳細は、service-guardian要素を参照してください。

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

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

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

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

  • カスタム・クラス - com.tangosol.net.ServiceFailurePolicy実装のクラス構成情報です。

member-listener

com.tangosol.net.MemberListenerインタフェースを実装するクラスの構成情報を指定します。実装には、publicなデフォルト・コンストラクタが必要です。

MemberListener実装は、キャッシュ・サービス・ライフサイクル・イベントを受信します。member-listenerは、サービスでMapListenerをプログラムによって追加するための代替手段として使用されます。

service-priority

サービス・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は10です。

event-dispatcher-priority

各サービスのイベント・ディスパッチャ・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は10です。

reliable-transport

信頼性の高いポイントツーポイント通信を実現するためにこのサービスで使用されるトランスポート・プロトコルを指定します。<unicast-listener>要素で定義される共有トランスポート・インスタンスではなく、サービス固有のトランスポート・インスタンスを使用することを示す値を指定します。サービス固有のトランスポート・インスタンスを使用すると、パフォーマンスは向上しますが、リソース消費が増加するため、優先度の高い重要なサービスではあまり使用されません。一般に、共有トランスポート・インスタンスはサービス固有のトランスポート・インスタンスよりもリソース使用量が少なくてすみます。有効な値は次のとおりです。

  • datagram – UDPプロトコル

  • tmb – TCP/IPメッセージ・バス・プロトコル

  • tmbs – SSL対応TCP/IPメッセージ・バス・プロトコル。TMBSには、SSLソケット・プロバイダの使用が必要です。「socket-provider」を参照してください。

  • sdmb – ソケット・ダイレクト・プロトコル(SDP)メッセージ・バス。SDMBは、Oracle Exalogicシステムでのみ使用できます。

  • sdmbs – SSL対応SDPメッセージ・バス。SDMBSはOracle Exalogicシステムでのみ使用でき、SSLソケット・プロバイダの使用が必要です。「socket-provider」を参照してください。

  • imb (Exalogicのデフォルト) – InfiniBandメッセージ・バス。IMBはOracle Exalogicシステムでのみ使用でき、TCMPがSSLとあわせて構成されていないかぎり自動的に使用されます。

デフォルト値は、<unicast-listener>要素の<reliable-transport>サブ要素で構成される共有トランスポート・インスタンスです。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.replicated.transport.reliableです。



OptimisticCacheサービスのパラメータ

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

表A-53 OptimisiticCacheサービスのパラメータ

パラメータ名 パラメータ値の説明

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です。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.optimistic.request.timeoutです。

serializer

オブジェクト・シリアライゼーション用のシリアライザ・クラスを指定します。シリアライザ・クラスはcom.tangosol.io.Serializerインタフェースを実装する必要があります。シリアライザの指定に最適な方法は、グローバルなserializer要素内で定義してから、キャッシュ構成ファイル内でキャッシュ用に構成することです。

guardian-timeout

サービスおよび依存するスレッドをガードするために使用するガーディアンのタイムアウト値を指定します。パラメータが指定されていない場合、デフォルトのガーディアンのタイムアウト(<timeout-milliseconds>オペレーション構成要素で指定)が使用されます。すべてのサービスに関してサービス・ガーディアンをグローバルに構成する方法の詳細は、service-guardian要素を参照してください。

この要素の値は、次の形式で指定する必要があります。

(\d)+((.)(\d)+)?[MS|ms|S|s|M|m|H|h|D|d]?

前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.optimistic.guard.timeoutです。

service-failure-policy

動作が異常なサービス・スレッドをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。すべてのサービスに関してサービス・ガーディアンをグローバルに構成する方法の詳細は、service-guardian要素を参照してください。

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

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

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

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

  • カスタム・クラス - com.tangosol.net.ServiceFailurePolicy実装のクラス構成情報です。

member-listener

com.tangosol.net.MemberListenerインタフェースを実装するクラスの構成情報を指定します。実装には、publicなデフォルト・コンストラクタが必要です。

MemberListener実装は、キャッシュ・サービス・ライフサイクル・イベントを受信します。member-listenerは、サービスでMapListenerをプログラムによって追加するための代替手段として使用されます。

service-priority

サービス・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は10です。

event-dispatcher-priority

各サービスのイベント・ディスパッチャ・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は10です。

reliable-transport

信頼性の高いポイントツーポイント通信を実現するためにこのサービスで使用されるトランスポート・プロトコルを指定します。<unicast-listener>要素で定義される共有トランスポート・インスタンスではなく、サービス固有のトランスポート・インスタンスを使用することを示す値を指定します。サービス固有のトランスポート・インスタンスを使用すると、パフォーマンスは向上しますが、リソース消費が増加するため、優先度の高い重要なサービスではあまり使用されません。一般に、共有トランスポート・インスタンスはサービス固有のトランスポート・インスタンスよりもリソース使用量が少なくてすみます。有効な値は次のとおりです。

  • datagram – UDPプロトコル

  • tmb – TCP/IPメッセージ・バス・プロトコル

  • tmbs – SSL対応TCP/IPメッセージ・バス・プロトコル。TMBSには、SSLソケット・プロバイダの使用が必要です。「socket-provider」を参照してください。

  • sdmb – ソケット・ダイレクト・プロトコル(SDP)メッセージ・バス。SDMBは、Oracle Exalogicシステムでのみ使用できます。

  • sdmbs – SSL対応SDPメッセージ・バス。SDMBSはOracle Exalogicシステムでのみ使用でき、SSLソケット・プロバイダの使用が必要です。「socket-provider」を参照してください。

  • imb (Exalogicのデフォルト) – InfiniBandメッセージ・バス。IMBはOracle Exalogicシステムでのみ使用でき、TCMPがSSLとあわせて構成されていないかぎり自動的に使用されます。

デフォルト値は、<unicast-listener>要素の<reliable-transport>サブ要素で構成される共有トランスポート・インスタンスです。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.optimistic.transport.reliableです。



起動サービスのパラメータ

起動サービスでは、表A-54に記載されたパラメータがサポートされます。これらの設定は、各サービス・インスタンスに対してcoherence-cache-config.xmlディスクリプタ内のinvocation-scheme要素の一部としても指定できます。

表A-54 起動サービスのパラメータ

パラメータ名 パラメータ値の説明

thread-count

サービスで使用されるデーモン・スレッドの数を指定します。有効な値は、正の整数、0または-1です。値0は、すべての関連するタスクがそのサービス・スレッドで実行されることを示します。値-1は、可能な場合はタスクがコール元のスレッドで実行されることを示します。

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

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.invocation.threadsです。

task-hung-threshold

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

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.invocation.task.hungです。

task-timeout

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

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.invocation.task.timeoutです。

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です。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.invocation.request.timeoutです。

serializer

オブジェクト・シリアライゼーション用のシリアライザ・クラスを指定します。シリアライザ・クラスはcom.tangosol.io.Serializerインタフェースを実装する必要があります。シリアライザの指定に最適な方法は、グローバルなserializer要素内で定義してから、キャッシュ構成ファイル内でキャッシュ用に構成することです。

guardian-timeout

サービスおよび依存するスレッドをガードするために使用するガーディアンのタイムアウト値を指定します。パラメータが指定されていない場合、デフォルトのガーディアンのタイムアウト(<timeout-milliseconds>オペレーション構成要素で指定)が使用されます。すべてのサービスに関してサービス・ガーディアンをグローバルに構成する方法の詳細は、service-guardian要素を参照してください。

この要素の値は、次の形式で指定する必要があります。

(\d)+((.)(\d)+)?[MS|ms|S|s|M|m|H|h|D|d]?

前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.invocation.guard.timeoutです。

service-failure-policy

動作が異常なサービス・スレッドをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。すべてのサービスに関してサービス・ガーディアンをグローバルに構成する方法の詳細は、service-guardian要素を参照してください。

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

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

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

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

  • カスタム・クラス - com.tangosol.net.ServiceFailurePolicy実装のクラス構成情報です。

member-listener

com.tangosol.net.MemberListenerインタフェースを実装するクラスの構成情報を指定します。実装には、publicなデフォルト・コンストラクタが必要です。

MemberListener実装は、キャッシュ・サービス・ライフサイクル・イベントを受信します。member-listenerは、サービスでMapListenerをプログラムによって追加するための代替手段として使用されます。

service-priority

サービス・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は10です。

event-dispatcher-priority

各サービスのイベント・ディスパッチャ・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は10です。

worker-priority

ワーカー・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は5です。

reliable-transport

信頼性の高いポイントツーポイント通信を実現するためにこのサービスで使用されるトランスポート・プロトコルを指定します。<unicast-listener>要素で定義される共有トランスポート・インスタンスではなく、サービス固有のトランスポート・インスタンスを使用することを示す値を指定します。サービス固有のトランスポート・インスタンスを使用すると、パフォーマンスは向上しますが、リソース消費が増加するため、優先度の高い重要なサービスではあまり使用されません。一般に、共有トランスポート・インスタンスはサービス固有のトランスポート・インスタンスよりもリソース使用量が少なくてすみます。有効な値は次のとおりです。

  • datagram – UDPプロトコル

  • tmb – TCP/IPメッセージ・バス・プロトコル

  • tmbs – SSL対応TCP/IPメッセージ・バス・プロトコル。TMBSには、SSLソケット・プロバイダの使用が必要です。「socket-provider」を参照してください。

  • sdmb – ソケット・ダイレクト・プロトコル(SDP)メッセージ・バス。SDMBは、Oracle Exalogicシステムでのみ使用できます。

  • sdmbs – SSL対応SDPメッセージ・バス。SDMBSはOracle Exalogicシステムでのみ使用でき、SSLソケット・プロバイダの使用が必要です。「socket-provider」を参照してください。

  • imb (Exalogicのデフォルト) – InfiniBandメッセージ・バス。IMBはOracle Exalogicシステムでのみ使用でき、TCMPがSSLとあわせて構成されていないかぎり自動的に使用されます。

デフォルト値は、<unicast-listener>要素の<reliable-transport>サブ要素で構成される共有トランスポート・インスタンスです。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.invocation.transport.reliableです。



LocalCacheサービスのパラメータ

LocalCacheサービスでは、表A-55に記載されたパラメータがサポートされます。

表A-55 LocalCacheサービスのパラメータ

パラメータ名 パラメータ値の説明

lock-enforce

入力、削除および消去操作にロックを施行するかどうかを指定します。この値がfalseの場合は、クライアントがロックおよびロック解除を明示的にコールする必要があります。

デフォルト値はfalseです。

lock-wait

ロックの取得を試行し続ける時間をミリ秒単位で指定します。このパラメータは、ロックの施行が有効になっている場合のみ使用されます。値を-1にすると、ロックが取得できるまでコール元のスレッドをブロックします。

デフォルト値は0です。



プロキシ・サービスのパラメータ

プロキシ・サービスでは、表A-56に記載されたパラメータがサポートされます。これらの設定は、各サービス・インスタンスに対してcoherence-cache-config.xmlディスクリプタ内のproxy-scheme要素の一部としても指定できます。

表A-56 プロキシ・サービスのパラメータ

パラメータ名 パラメータ値の説明

acceptor-config

接続アクセプタの構成を記述します。サービスでは、この接続アクセプタを使用してCoherence*Extendクライアントからの接続を受け入れ、クライアントがクラスタに参加していなくても、クラスタの提供するサービスを使用できるようにします。

proxy-config

このサービスによって管理されるクラスタ化サービス・プロキシの構成を記述します。

thread-count

プロキシ・サービスで使用されるデーモン・スレッドの数を指定します。有効な値は、正の整数または0です。デフォルト値は、0で、これは動的スレッド・プーリングが有効化され、スレッド数がプロキシ・サービスの負荷に基づいて自動的に調整されることを示します。明示的に正の値を指定すると、プール内のスレッド数を設定できます。

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

スレッド・プールを無効化するには、thread-count-maxおよびthread-count-minパラメータを0に設定します。スレッド・プールを無効化すると、関連するタスクはすべて、プロキシ・サービス・スレッドで実行されます。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.proxy.threadsです。

task-hung-threshold

タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。

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

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.proxy.task.hungです。

task-timeout

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

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.proxy.task.timeoutです。

request-timeout

他の同名のプロキシに送信されるリクエストがくるまでプロキシが待機する最大時間を指定します。プロキシ間でリクエストが送信されることはないため、このパラメータを使用しないでください。

serializer

オブジェクト・シリアライゼーション用のシリアライザ・クラスを指定します。シリアライザ・クラスはcom.tangosol.io.Serializerインタフェースを実装する必要があります。シリアライザの指定に最適な方法は、グローバルなserializer要素内で定義してから、キャッシュ構成ファイル内でキャッシュ用に構成することです。

guardian-timeout

サービスおよび依存するスレッドをガードするために使用するガーディアンのタイムアウト値を指定します。パラメータが指定されていない場合、デフォルトのガーディアンのタイムアウト(<timeout-milliseconds>オペレーション構成要素で指定)が使用されます。すべてのサービスに関してサービス・ガーディアンをグローバルに構成する方法の詳細は、service-guardian要素を参照してください。

この要素の値は、次の形式で指定する必要があります。

(\d)+((.)(\d)+)?[MS|ms|S|s|M|m|H|h|D|d]?

前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.proxy.guard.timeoutです。

service-failure-policy

動作が異常なサービス・スレッドをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。すべてのサービスに関してサービス・ガーディアンをグローバルに構成する方法の詳細は、service-guardian要素を参照してください。

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

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

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

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

  • カスタム・クラス - com.tangosol.net.ServiceFailurePolicy実装のクラス構成情報です。

member-listener

com.tangosol.net.MemberListenerインタフェースを実装するクラスの構成情報を指定します。実装には、publicなデフォルト・コンストラクタが必要です。

MemberListener実装は、キャッシュ・サービス・ライフサイクル・イベントを受信します。member-listenerは、サービスでMapListenerをプログラムによって追加するための代替手段として使用されます。

proxy-quorum-policy-scheme

プロキシ・サービス用のクォーラム・ポリシー設定を指定します。

load-balancer

プロキシ・スキームの一環として戦略が明示的に構成されていない場合にプロキシ・サービスで使用するデフォルトのロード・バランシング戦略を指定します。有効な値は次のとおりです。

  • proxy - (デフォルト)この戦略では、既存の接続数、接続制限、送受信メッセージのバックログおよびデーモン・プールの使用率に基づいて、プロキシ・サービス・メンバーにクライアント接続を均等に分散します。

  • client - この戦略では、クライアント・アドレス・プロバイダの実装に依存して、プロキシ・サービス・メンバーへのクライアントの分散を指定します。クライアント・アドレス・プロバイダが実装されていない場合は、接続が成功するまで、拡張クライアントが各プロキシ・サービスをランダムに試行します。

service-priority

サービス・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は10です。

event-dispatcher-priority

各サービスのイベント・ディスパッチャ・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は10です。

worker-priority

ワーカー・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は5です。

reliable-transport

信頼性の高いポイントツーポイント通信を実現するためにこのサービスで使用されるトランスポート・プロトコルを指定します。<unicast-listener>要素で定義される共有トランスポート・インスタンスではなく、サービス固有のトランスポート・インスタンスを使用することを示す値を指定します。サービス固有のトランスポート・インスタンスを使用すると、パフォーマンスは向上しますが、リソース消費が増加するため、優先度の高い重要なサービスではあまり使用されません。一般に、共有トランスポート・インスタンスはサービス固有のトランスポート・インスタンスよりもリソース使用量が少なくてすみます。有効な値は次のとおりです。

  • datagram – UDPプロトコル

  • tmb – TCP/IPメッセージ・バス・プロトコル

  • tmbs – SSL対応TCP/IPメッセージ・バス・プロトコル。TMBSには、SSLソケット・プロバイダの使用が必要です。「socket-provider」を参照してください。

  • sdmb – ソケット・ダイレクト・プロトコル(SDP)メッセージ・バス。SDMBは、Oracle Exalogicシステムでのみ使用できます。

  • sdmbs – SSL対応SDPメッセージ・バス。SDMBSはOracle Exalogicシステムでのみ使用でき、SSLソケット・プロバイダの使用が必要です。「socket-provider」を参照してください。

  • imb (Exalogicのデフォルト) – InfiniBandメッセージ・バス。IMBはOracle Exalogicシステムでのみ使用でき、TCMPがSSLとあわせて構成されていないかぎり自動的に使用されます。

デフォルト値は、<unicast-listener>要素の<reliable-transport>サブ要素で構成される共有トランスポート・インスタンスです。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.proxy.transport.reliableです。

thread-count-max

動的スレッド・プールで許容されるデーモン・スレッドの最大数を指定します。このパラメータは、thread-count0に設定されている場合にのみ有効です。有効な値は、正の整数または0です。このパラメータおよびthread-count-minパラメータの両方に値を設定すると、デーモン・スレッドは作成されず、すべてのクライアント・リクエストはプロキシ・サービス・スレッドで処理されます。デフォルト値は、コア数の4倍です。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.proxy.threads.maxです。

thread-count-min

動的スレッド・プールで許容される(および最初に作成される)デーモン・スレッドの最小数を指定します。このパラメータは、thread-count0に設定されている場合にのみ有効です。有効な値は、正の整数または0です。このパラメータおよびthread-count-maxパラメータの両方に値を設定すると、デーモン・スレッドは作成されず、すべてのクライアント・リクエストはプロキシ・サービス・スレッドで処理されます。デフォルト値は、コア数の2倍です。

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.proxy.threads.minです。



RemoteCacheサービスのパラメータ

RemoteCacheサービスでは、表A-57に記載されたパラメータがサポートされます。これらの設定は、各サービス・インスタンスに対してcoherence-cache-config.xmlディスクリプタ内のremote-cache-scheme要素の一部としても指定できます。

表A-57 RemoteCacheサービスのパラメータ

パラメータ名 パラメータ値の説明

initiator-config

クラスタへの接続を確立するためにサービスで使用される接続イニシエータの構成を記述します。

serializer

オブジェクト・シリアライゼーション用のシリアライザ・クラスを指定します。シリアライザ・クラスはcom.tangosol.io.Serializerインタフェースを実装する必要があります。シリアライザの指定に最適な方法は、グローバルなserializer要素内で定義してから、キャッシュ構成ファイル内でキャッシュ用に構成することです。

defer-key-association-check

キー・アソシエーションの処理を、拡張クライアントによって行うか、クラスタ側まで遅延するかを指定します。有効な値は、truefalseです。デフォルト値はfalseであり、キー・アソシエーションの処理を拡張クライアントによって行うことを示します。この値をtrueに設定する場合、.NETクライアントおよびC++クライアントには、クラスタ・キャッシュ・サーバー上のキークラスのパラレルJava実装を含める必要があります。



RemoteInvocationサービスのパラメータ

RemoteInvocationサービスでは、表A-58に記載されたパラメータがサポートされます。これらの設定は、各サービス・インスタンスに対してcoherence-cache-config.xmlディスクリプタ内のremote-invocation-scheme要素の一部としても指定できます。

表A-58 RemoteInvocationサービスのパラメータ

パラメータ名 パラメータ値の説明

initiator-config

クラスタへの接続を確立するためにサービスで使用される接続イニシエータの構成を記述します。

serializer

オブジェクト・シリアライゼーション用のシリアライザ・クラスを指定します。シリアライザ・クラスはcom.tangosol.io.Serializerインタフェースを実装する必要があります。シリアライザの指定に最適な方法は、グローバルなserializer要素内で定義してから、キャッシュ構成ファイル内でキャッシュ用に構成することです。



NameServiceのパラメータ

NameServiceサービスでは、表A-59に記載されたパラメータがサポートされます。

表A-59 NameServiceのパラメータ

パラメータ名 パラメータ値の説明

acceptor-config

クラスタでCoherence*Extendクライアントの使用に利用可能なプロキシ・サービスを検出するために使用される接続アクセプタの構成が含まれています。

serializer

オブジェクト・シリアライゼーション用のシリアライザ・クラスを指定します。シリアライザ・クラスはcom.tangosol.io.Serializerインタフェースを実装する必要があります。シリアライザの指定に最適な方法は、グローバルなserializer要素内で定義してから、キャッシュ構成ファイル内でキャッシュ用に構成することです。



RemoteNameServiceのパラメータ

RemoteNameServiceサービスでは、表A-60に記載されたパラメータがサポートされます。

表A-60 RemoteNameServiceのパラメータ

パラメータ名 パラメータ値の説明

initiator-config/tcp-initiator

クラスタへの接続を確立するためにサービスで使用されるTCP接続イニシエータの構成を記述します。

serializer

オブジェクト・シリアライゼーション用のシリアライザ・クラスを指定します。シリアライザ・クラスはcom.tangosol.io.Serializerインタフェースを実装する必要があります。シリアライザの指定に最適な方法は、グローバルなserializer要素内で定義してから、キャッシュ構成ファイル内でキャッシュ用に構成することです。



service-guardian

使用場所: cluster-config

説明

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

要素

表A-61で、service-guardian要素のサブ要素を説明します。

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

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

<service-failure-policy>

オプション

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

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

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

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

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

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

<timeout-milliseconds>

オプション

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

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.guard.timeoutです。


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

services

使用場所: cluster-config

説明

services要素には、各サービスの宣言データを記述します。

要素

表A-50で、services要素のサブ要素を説明します。

表A-62 servicesのサブ要素

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

<service>

オプション

特定のサービスの宣言データを指定します。


shutdown-listener

使用場所: cluster-config

説明

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

要素

表A-63で、shutdown-listener要素のサブ要素を説明します。

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

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

<enabled>

必須

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

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

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

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

  • true - forceと同じ。

  • false - noneと同じ。

注意: 本番で使用する場合、外部シャットダウンに対する動作が目的どおりであることがテストで検証されている場合を除き、この値をnoneに設定することをお薦めします。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.shutdownhookです。


socket-address

使用場所: well-known-addressesaddress-provider

説明

socket-address要素は、ソケットがバインドされるアドレス(IPまたはDNS名およびポート)を指定します。

要素

表A-64で、socket-address要素のサブ要素を説明します。

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

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

<address>

必須

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

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

<port>

必須

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

注意: WKAメンバーを設定する場合、このポート値は、ユニキャスト・リスナー・ポート用に指定されているポート値と一致する必要があります。<unicast-listener>要素を参照してください。


socket-provider

使用場所: socket-providersunicast-listenerssl

説明

<socket-provider>要素には、ソケットおよびチャンネル・ファクトリの構成情報を記述します。次のソケット・プロバイダがサポートされており、定義済のid属性名を使用して参照されます。

<socket-providers>
   <socket-provider id="system">
      <system/>
   </socket-provider>

   <socket-provider id="tcp">
      <tcp/>
   </socket-provider>

   <socket-provider id="ssl">
      <ssl>
         <identity-manager>
            <key-store>
               <url system-property="tangosol.coherence.security.keystore">
                  file:keystore.jks</url>
               <password system-property="tangosol.coherence.security.password"/>
            </key-store>
            <password system-property="tangosol.coherence.security.password"/>
         </identity-manager>
         <trust-manager>
            <algorithm>PeerX509</algorithm>
            <key-store>
               <url system-property="tangosol.coherence.security.keystore">
                  file:keystore.jks</url>
               <password system-property="tangosol.coherence.security.password"/>
            </key-store>
         </trust-manager>
         <socket-provider>tcp</socket-provider>
      </ssl>
   </socket-provider>

   <socket-provider id="sdp">
      <sdp/>
   </socket-provider>
</socket-providers>

より詳細なSSL構成をサポートするために、別のSSL定義を作成できます。

要素

表A-65で、socket-provider要素のサブ要素を説明します。

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

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

<system>

オプション

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

<ssl>

オプション

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

<tcp>

オプション

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

<sdp>

オプション

JVMおよび基礎となるネットワーク・スタックでSDPがサポートされている場合、SDPベースのソケットおよびチャネルの実装を生成するソケット・プロバイダを指定します。


socket-providers

使用場所: cluster-config

説明

socket-providers要素には、ソケット・プロバイダ実装ごとの宣言データを記述します。Coherenceでは、systemtcpsslおよびsdpのソケット・プロバイダがサポートされています。

要素

表A-66で、socket-providers要素のサブ要素を説明します。

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

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

<socket-provider>

オプション

ソケットおよびチャンネル・ファクトリの構成情報を指定します。


ssl

使用場所: socket-provider

説明

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

要素

表A-67で、ssl要素のサブ要素を説明します。

表A-67 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>要素を使用して初期化パラメータを指定できます。

cipher-suites

オプション

暗号のリストを指定します。cipher-suites要素内のname要素を使用して暗号を入力します。複数のname要素を指定できます。

usage属性を使用して、暗号のリストを許可するかどうかを指定します。usage属性値がblack-listの場合、指定した暗号がデフォルトの有効な暗号リストから削除されます。usage属性値がwhite-listの場合、指定した暗号が有効な暗号です。usage属性値が指定されていない場合のデフォルト値はwhite-listです。

protocol-versions

オプション

プロトコル・バージョンのリストを指定します。protocol-versions要素内のname要素を使用してプロトコル・バージョンを入力します。複数のname要素を指定できます。

usage属性を使用して、プロトコル・バージョンのリストを許可するかどうかを指定します。usage属性値がblack-listの場合、指定したプロトコル・バージョンがデフォルトの有効なプロトコル・リストから削除されます。usage属性値がwhite-listの場合、指定したプロトコル・バージョンが有効なプロトコルです。usage属性値が指定されていない場合のデフォルト値はwhite-listです。

<socket-provider>

オプション

SSLの委譲プロバイダの構成情報を指定します。有効な値は、tcpおよびsdpです。デフォルト値はtcpです。


tcp-ring-listener

使用場所: cluster-config

説明

TCPリングを使用すると、クラスタ内の別のノードの停止を迅速に検出できます。これを有効にすると、そのクラスタ・ノードでは、クラスタ全体に及ぶTCP接続のリングを1つ使用します。クラスタ・ノードは、TCP接続を使用して1つのハートビート間隔内で別のノードの停止を検出できます(デフォルト値は1秒です。packet-delivery<heartbeat-milliseconds>サブ要素を参照)。これを無効にすると、別のノードがUDPパケットへの応答を停止したことを非常に長い間隔で検出する方法に頼る必要があります(packet-delivery<timeout-milliseconds>サブ要素を参照)。停止が検出されると、他のすべてのクラスタ・ノードに送信されます。

要素

表A-68で、tcp-ring-listener要素のサブ要素を説明します。

表A-68 tcp-ring-listenerのサブ要素

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

<enabled>

オプション

ノードの障害を迅速に検出するためにTCPリング・リスナーを有効にするかどうかを指定します。有効な値は、truefalseです。デフォルト値はtrueです。

<ip-timeout>

オプション

クラスタ・メンバーをホストするコンピュータに接続できないことを決定するために使用するタイムアウトを指定します。マシンに接続できないメンバーを削除する必要があることを決定する前に、指定した回数の接続を試行できます。有効な値は、時間間隔を表す文字列です。タイムアウトを0にすることは、システムレベルのモニタリングが無効となるためお薦めしません。デフォルト値は5sです。

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

この機能は、java.net.InetAddress.isReachableメカニズムに依存しています。使用可能かどうかの特定方法の詳細は、APIのドキュメントを参照してください。

<ip-attempts>

オプション

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

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

<listen-backlog>

オプション

TCP/IPサーバー・ソケットのバックログ・キューのサイズを指定します。有効値は正の整数です。デフォルト値は、オペレーティング・システムに依存します。

<priority>

必須

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


traffic-jam

使用場所: packet-publisher

説明

traffic-jam要素は、クライアント・スレッドでパケット・パブリッシャがパケットをエンキューしてネットワークに転送する速度を制御するために使用します。この制限を超えると、未処理のパケット数が指定された制限を下回るまで、任意のクライアント・スレッドは強制的に一時停止されます。パブリッシャのパケット転送速度を制限するには、flow-control要素を参照してください。

要素

表A-69で、traffic-jam要素のサブ要素を説明します。

表A-69 traffic-jamのサブ要素

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

<maximum-packets>

必須

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

<pause-milliseconds>

必須

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


trust-manager

使用場所: ssl

説明

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

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

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

要素

表A-70で、trust-manager要素のサブ要素を説明します。

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

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

<algorithm>

オプション

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

<provider>

オプション

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

<key-store>

オプション

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


unicast-listener

使用場所: cluster-config

説明

ユニキャスト・リスナーの構成情報を指定します。この要素は、Point-to-Pointのクラスタ通信をリスニングするためにクラスタ・ノードでバインドするアドレスおよびポートを指定するために使用します。

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

デフォルトでは、クラスタの形成時に他のノードを検出するためにマルチキャスト・プロトコルが使用されます。マルチキャスト・ネットワーキングが適さない場合、または環境内で使用できない場合には、well-known-addresses機能を使用するとマルチキャスト・トラフィックを使用する必要がなくなります。

要素

表A-71で、unicast-listener要素のサブ要素を説明します。

表A-71 unicast-listenerのサブ要素

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

<socket-provider>

オプション

ソケット・プロバイダの構成を指定するか、<socket-providers>要素内で定義されているソケット・プロバイダ構成を参照します。使用可能なソケット・プロバイダは、system (デフォルト)、ssltcpおよびsdpです。定義済のid属性名を使用してソケット・プロバイダ構成を参照します。例:

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

事前構成済システム・プロパティのオーバーライド値はtangosol.coherence.socketproviderです。

<reliable-transport>

オプション

信頼性の高いポイントツーポイント通信を実現するために使用されるトランスポート・プロトコルを指定します。デフォルトでは、すべてのサービスが構成されたプロトコルおよび共有トランスポート・インスタンスを使用します。また、サービスはreliable-transportサービス・パラメータを使用して明示的にトランスポート・プロトコルを指定することもできます。その場合は、サービス固有のトランスポート・インスタンスを使用することになります。サービス固有のトランスポート・インスタンスを使用すると、パフォーマンスは向上しますが、リソース消費が増加するため、優先度の高い重要なサービスではあまり使用されません。一般に、共有トランスポート・インスタンスはサービス固有のトランスポート・インスタンスよりもリソース使用量が少なくてすみます。有効な値は次のとおりです。

  • datagram (デフォルト) – UDPプロトコル

  • tmb – TCP/IPメッセージ・バス・プロトコル

  • tmbs – SSL対応TCP/IPメッセージ・バス・プロトコル。TMBSには、SSLソケット・プロバイダの使用が必要です。「socket-provider」を参照してください。

  • sdmb – ソケット・ダイレクト・プロトコル(SDP)メッセージ・バス。SDMBは、Oracle Exalogicシステムでのみ使用できます。

  • sdmbs – SSL対応SDPメッセージ・バス。SDMBSはOracle Exalogicシステムでのみ使用でき、SSLソケット・プロバイダの使用が必要です。「socket-provider」を参照してください。

  • imb (Exalogicのデフォルト) – InfiniBandメッセージ・バス。IMBはOracle Exalogicシステムでのみ使用でき、TCMPがSSLとあわせて構成されていないかぎり自動的に使用されます。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.transport.reliableです。

<well-known-addresses>

オプション

マルチキャスト・ブロードキャストを使用してクラスタ・メンバーを検出するかわりに、クラスタ検出プロトコルで使用される「Well Known」アドレス(WKA)のリストを記述します。

<address>

必須

ソケットがリスニングまたは公開するIPアドレスを指定します。アドレスはサブネットおよびマスクとしてCIDR注釈を使用して(たとえば192.168.1.0/24と)入力することもでき、それにより、使用可能なローカルIPアドレスに対するランタイム解決が可能になります。

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

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.localhostです。

<port>

必須

ソケットがリスニングまたは公開を行うポートを指定します。第2ポートは自動的に開かれ、次に使用可能なポートにデフォルト設定されます。有効な値は1から65535です。第1ポートのデフォルト値は8088、第2ポートのデフォルト値は8089(使用可能な場合)です。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.localportです。

<port-auto-adjust>

必須

指定したポートがすでに使用されているためにバインドできない場合に、ユニキャスト・ポートを自動的に増分するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はtrueです。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.localport.adjustです。

<packet-buffer>

必須

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

<priority>

必須

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


volume-threshold

使用場所: packet-speaker

説明

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

パフォーマンスへの影響

要素

表A-72で、packet-speaker要素のサブ要素を説明します。

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

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

<minimum-packets>

必須

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


well-known-addresses

使用場所: unicast-listener


注意:

これは、セキュリティ関連の機能ではなく、クラスタに参加できるアドレスを制限するものではありません。クラスタ・メンバーシップの制限の詳細は、authorized-hosts要素を参照してください。

マルチキャストを使用する際のクラスタの構築に問題がある場合は、『Oracle Coherenceの管理』でマルチキャスト接続テストの実行方法を参照してください。


説明

デフォルトでは、クラスタの形成時に他のノードを検出するためにマルチキャスト・プロトコルが使用されます。マルチキャスト・ネットワーキングが適さない場合、または環境内で使用できない場合には、well-known-addresses機能を使用するとマルチキャスト・トラフィックを使用する必要がなくなります。使用中は、クラスタの開始が許可され、クラスタの存続期間を通して使用できる見込みのあるノードの比較的小さなリストでクラスタが構成されます。すべてのWKAノードが任意の時点で同時にアクティブである必要はありません。このリストは、マルチキャストを使用しないでクラスタの経路を見つけるために他のすべてのノードで使用され、他のノードが参加できるように既知のノードとして構成されているノードが少なくとも1つは稼働している必要があります。

次の例では、2つのwell-known-addressesをデフォルト・ポートで構成します。

<cluster-config>
   <unicast-listener>
      <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>
   </unicast-listener>
</cluster-config>

要素

表A-73で、well-known-addresses要素のサブ要素を説明します。

表A-73 well-known-addressesのサブ要素

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

<socket-address>

オプション

マルチキャスト・ブロードキャストを使用するかわりにクラスタ検出プロトコルで使用されるWKAのリストを指定します。1つ以上のWKAを指定した場合、メンバーがクラスタに参加するようにするには、そのメンバーがWKAになるか、または少なくとも1つのWKAメンバーが稼働している必要があります。また、すべてのクラスタ通信はユニキャストを使用して実行されます。空の場合または指定していない場合は、マルチキャスト通信が使用されます。

事前構成のシステム・プロパティのオーバーライド値はtangosol.coherence.wkaおよびtangosol.coherence.wka.portです。

<address-provider>

オプション

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


属性リファレンス

表A-74で、オペレーション・デプロイメント・ディスクリプタで使用可能な属性を説明します。

表A-74 オペレーション・デプロイメント・ディスクリプタの属性

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

xml-override

オプション

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

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

次の要素は、自身のXMLオーバーライド・ファイルでオーバーライドできます。

address-providerauthorized-hostscache-factory-builder-configcluster-configcoherenceconfigurable-cache-factory-configincoming-message-handlerlogging-configmulticast-listeneroutgoing-message-handlersecurity-configserializerserviceservice-failure-policyshutdown-listenertcp-ring-listenerunicast-listenerpacket-speakerpacket-publishermbeans

id

オプション

id属性は、複数出現する可能性のある要素を区別します(<service>など)。「XMLオーバーライド機能の理解」を参照してください。

system-property

オプション

この属性は、任意の要素のシステム・プロパティ名を指定するために使用します。システム・プロパティは、Javaコマンド行から要素の値をオーバーライドする際に使用します。この機能により、すべてのクラスタ・ノードで同じオペレーション・ディスクリプタ(およびオーバーライド・ファイル)を使用し、システム・プロパティで各ノードをカスタマイズできます。この機能の詳細は、付録D「システム・プロパティのオーバーライド」を参照してください。