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

前
 
次
 

B キャッシュ構成の要素

この付録では、キャッシュ構成デプロイメント・ディスクリプタで使用できる要素のリファレンスと、ディスクリプタの簡単な概要を示します。キャッシュの構成方法および使用手順の詳細は、第11章「キャッシュの構成」を参照してください。

キャッシュ構成デプロイメント・ディスクリプタ

キャッシュ構成デプロイメント・ディスクリプタでは、クラスタ内で使用できる様々な種類のキャッシュを指定します。ディスクリプタの名前と場所はオペレーション・デプロイメント・ディスクリプタで指定され、coherence-cache-config.xmlにデフォルト設定されます。サンプルの構成ディスクリプタがcoherence.jarにパッケージ化されており、カスタムのcoherence-cache-config.xmlファイルがアプリケーションのクラスパスに検出されないかぎりこれが使用されます。クラスタ内のすべてのノードで使用するキャッシュ構成ディスクリプタを統一することをお薦めします。

キャッシュ構成デプロイメント・ディスクリプタは、coherence.jarライブラリのルートにあるcache-config.dtdファイルに定義します。ディスクリプタは、次のDOCTYPE宣言から開始します。

<!DOCTYPE cache-config SYSTEM "cache-config.dtd">

構成ディスクリプタのルート要素は<cache-config>要素です。すべてのキャッシュがこのルート要素内に定義されます。


注意:

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


要素リファレンス

次の表は、キャッシュ構成デプロイメント・ディスクリプタで使用可能なすべての非終端要素を一覧表示しています。

表B-1 キャッシュ構成の要素

要素 使用場所

acceptor-config


proxy-scheme


address-provider


tcp-acceptorremote-addresses

async-store-manager


external-schemepaged-external-scheme

authorized-hosts


tcp-acceptor


backing-map-scheme


distributed-schemeoptimistic-schemereplicated-scheme

backup-storage


distributed-scheme


bdb-store-manager


external-schemepaged-external-schemeasync-store-manager

cache-config


ルート要素

cache-mapping


caching-scheme-mapping


cache-service-proxy


proxy-config


caching-scheme-mapping


cache-config


caching-schemes


cache-config


class-scheme


caching-schemeslocal-schemedistributed-schemereplicated-schemeoptimistic-schemenear-schemeoverflow-schemeread-write-backing-map-schemecachestore-schemelistener

cachestore-scheme


local-schemeread-write-backing-map-scheme

custom-store-manager


external-schemepaged-external-schemeasync-store-manager

defaults


cache-config


disk-scheme


caching-schemes


distributed-scheme


caching-schemesnear-schemeoverflow-scheme

external-scheme


caching-schemesdistributed-schemereplicated-schemeoptimistic-schemenear-schemeoverflow-schemeread-write-backing-map-scheme

identity-manager


ssl


init-param


init-params


init-params


class-scheme


initiator-config


remote-cache-schemeremote-invocation-scheme

instance


serializersocket-providerservice-failure-policy

invocation-scheme


caching-schemes


jms-acceptor


acceptor-config


jms-initiator


initiator-config


key-associator


distributed-scheme


key-partitioning


distributed-scheme


key-store


identity-managertrust-manager

lh-file-manager


external-schemepaged-external-schemeasync-store-manager

listener


disk-schemelocal-schemeexternal-schemepaged-external-schemedistributed-schemereplicated-schemeoptimistic-schemenear-schemeoverflow-schemeread-write-backing-map-scheme

local-address


tcp-acceptortcp-initiator

local-scheme


caching-schemesdistributed-schemereplicated-schemeoptimistic-schemenear-schemeoverflow-schemeread-write-backing-map-scheme

near-scheme


caching-schemes


nio-file-manager


external-schemepaged-external-schemeasync-store-manager

nio-memory-manager


external-schemepaged-external-schemeasync-store-manager

operation-bundling


cachestore-schemedistributed-schemeremote-cache-scheme

optimistic-scheme


caching-schemesnear-schemeoverflow-scheme

outgoing-message-handler


acceptor-configinitiator-config

overflow-scheme


caching-schemesdistributed-schemereplicated-schemeoptimistic-schemeread-write-backing-map-scheme

paged-external-scheme


caching-schemesdistributed-schemereplicated-schemeoptimistic-schemenear-schemeoverflow-schemeread-write-backing-map-scheme

partitioned


backing-map-scheme


partitioned-quorum-policy-scheme


distributed-scheme


provider


identity-managerssltrust-manager

proxy-config


proxy-scheme


proxy-scheme


caching-schemes


proxy-quorum-policy-scheme


proxy-scheme


read-write-backing-map-scheme


caching-schemesdistributed-schemereplicated-schemeoptimistic-scheme

remote-addresses


tcp-initiator


remote-cache-scheme


cachestore-schemecaching-schemesnear-scheme

remote-invocation-scheme


caching-schemes


replicated-scheme


caching-schemesnear-schemeoverflow-scheme

serializer


acceptor-configdefaultsdistributed-schemeinitiator-configinvocation-schemeoptimistic-schemereplicated-schemetransactional-scheme

socket-address


remote-addresses


socket-provider


tcp-acceptortcp-initiator

ssl


socket-provider


tcp-acceptor


acceptor-config


tcp-initiator


initiator-config


transactional-scheme


caching-schemes


trust-manager


ssl




acceptor-config

使用場所: proxy-scheme

説明

acceptor-config要素は、TCP/IP接続アクセプタの構成情報を指定します。接続アクセプタはプロキシ・サービスで使用され、Coherence*Extendクライアントからクラスタへの接続を有効にして、クライアントがクラスタに参加していなくても、クラスタの提供するサービスを使用できるようにします。

要素

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

表B-2 acceptor-configのサブ要素

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

<connection-limit>

オプション

この接続アクセプタで許可される同時接続の最大数。有効な値は、正の整数および0です。値0は制限がないことを意味します。デフォルト値は0です。

<outgoing-message-handler>

オプション

クライアントからクラスタへの接続の切断を検出するために接続アクセプタで使用される構成情報を指定します。

<serializer>

オプション

接続アクセプタがユーザー定義型のシリアライズおよびデシリアライズに使用するcom.tangosol.io.Serializer実装のクラス構成情報を指定します。次の例は、POFユーザー定義型の構成ファイルmy-pof-types.xmlを使用してユーザー定義型をPOFストリームに対してシリアライズおよびデシリアライズするConfigurablePofContextを構成しています。

<serializer>
  <class-name>com.tangosol.io.pof.ConfigurablePofContext</class-name>
  <init-params>
    <init-param>
      <param-type>string</param-type>
      <param-value>my-pof-types.xml</param-value>
    </init-param>
  </init-params>
</serializer>

<tcp-acceptor>

オプション

Coherence*ExtendクライアントからクラスタへのTCP/IPを介した接続を有効にする、接続アクセプタの構成情報を指定します。

<use-filters>

オプション

この接続アクセプタで使用するフィルタ名のリストを記述します。たとえば、<use-filter>を次のように指定すると、すべてのネットワーク・メッセージに対してgzip圧縮がアクティブ化されるため、WANおよび低帯域幅ネットワークのパフォーマンスが大幅に向上します。

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


address-provider

使用場所: tcp-acceptorremote-addresses

説明

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

要素

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

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

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

<class-name>

オプション

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

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

<class-factory-name>

オプション

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

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

<method-name>

オプション

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

<init-params>

オプション

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



async-store-manager

使用場所: external-schemepaged-external-scheme

説明

async-store-manager要素は、他のストア・マネージャの実装に、非同期の書込み機能を追加します。サポートされるストア・マネージャは次のとおりです。

実装

このストア・マネージャは、com.tangosol.io.AsyncBinaryStoreManagerクラスによって実装されます。

要素

表B-4は、async-store-manager要素で定義可能なサブ要素について説明しています。

表B-4 async-store-managerのサブ要素

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

<async-limit>

オプション

非同期に書き込まれるキューに配置される最大バイト数を指定します。この値を0に設定しても非同期の書込みが無効になるわけではありません。0が設定されている場合は、この実装にデフォルトの最大バイト数が必要であることを示します。この要素の値は、次の形式で指定する必要があります。

[\d]+[[.][\d]+]?[K|k|M|m]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • K(キロ、210)

  • M(メガ、220)

値に係数が含まれていない場合は、1が係数として適用されます。有効な値は、正のメモリー・サイズまたは0です。デフォルト値は4MBです。

<bdb-store-manager>

オプション

キャッシュ記憶域にBerkeley Database JEのオンディスク・データベースを使用するよう外部キャッシュを構成します。

<class-name>

オプション

async-store-managerのカスタム実装を指定します。カスタム実装では、com.tangosol.io.AsyncBinaryStoreManagerクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<custom-store-manager>

オプション

ストレージ・マネージャのカスタム実装を使用するよう外部キャッシュを構成します。

<init-params>

オプション

初期化パラメータを指定します。これは、com.tangosol.run.xml.XmlConfigurableインタフェースを実装するasync-store-managerのカスタム実装で使用されます。

<lh-file-manager>

オプション

キャッシュ記憶域にCoherence LHのオンディスク・データベースを使用するよう外部キャッシュを構成します。

<nio-file-manager>

オプション

キャッシュ記憶域にメモリーマップ・ファイルを使用するよう外部キャッシュを構成します。

<nio-memory-manager>

オプション

キャッシュ記憶域にJVMヒープ外のメモリー領域を使用するよう外部キャッシュを構成します。



authorized-hosts

使用場所: tcp-acceptor

説明

この要素には、TCP/IPアクセプタを使用してクラスタへの接続が許可される、TCP/IPイニシエータ・ホストのIPアドレス・コレクションを記述します。このコレクションが空の場合、制約は課せられません。任意の数のhost-address要素およびhost-range要素を指定できます。

要素

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

表B-5 authorized-hostsのサブ要素

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

<host-address>

オプション

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

<host-range>

オプション

IPアドレスの範囲を指定します。これを指定すると、host-addressが指定されたホスト、または指定されたhost-range内のホストのみがクラスタに参加できます。

<host-filter>

オプション

特定のTCP/IPイニシエータを受け入れるかどうかを確認するためTCP/IPアクセプタで使用するcom.tangosol.util.Filter実装のクラス構成情報を指定します。evaluate()メソッドがクライアントのjava.net.InetAddressに渡されます。クライアントに接続を許可するには、実装がtrueを返す必要があります。クラスは<class-name>サブ要素を使用して指定されます。<init-params>サブ要素内に任意の初期化パラメータを定義できます。


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


backing-map-scheme

使用場所: distributed-schemeoptimistic-schemereplicated-scheme

説明

キャッシュ・サーバー内でのエントリの格納に使用するキャッシュのタイプを指定します。

オーバーフロー・ベースのバッキング・マップを使用する際は、対応するbackup-storageでオーバーフローを構成することが重要です(可能であれば、backing-mapと同じスキームを使用します)。構成例については、「オーバーフローが設定されたパーティション・キャッシュ」を参照してください。


注意:

partitionedサブ要素は、親要素がdistributed-schemeの場合にのみ使用されます。

要素

表B-6は、backing-map-scheme要素で定義可能なサブ要素について説明しています。

表B-6 backing-map-schemeのサブ要素

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

<partitioned>

オプション

バッキング・マップ自体をパーティション化するかどうかを指定します。これはdistributed-scheme内でのみ考慮されます。第12章「記憶域およびバッキング・マップの実装」を参照してください。

<class-scheme>

オプション

クラス・スキームは、任意のJavaオブジェクトをインスタンス化して、他のスキームでの使用を可能にするメカニズムを提供します。この要素を含むスキームによって、拡張の必要なクラスまたはインタフェースが指定されます。

<external-scheme>

オプション

外部スキームを使用すると、JVMヒープ・ベースでないキャッシュを定義することで大容量の記憶域の使用が可能になります。

<local-scheme>

オプション

ローカル・キャッシュ・スキームは、インメモリー・ローカル・キャッシュを定義します。ローカル・キャッシュは一般に、他のキャッシュ・スキーム内にネストされます(ニア・スキームのフロント層としてなど)。

<paged-external-scheme>

オプション

external-scheme同様、paged-external-schemesは、より大きな記憶域容量の使用を可能にする非JVMヒープ・ベースのキャッシュを定義します。

<overflow-scheme>

オプション

overflow-schemeは、高速でサイズ制限のあるフロント層キャッシュと、低速でより大容量のバック層キャッシュで構成される2層キャッシュを定義します。

<read-write-backing-map-scheme


オプション

read-write-backing-map-schemeは、永続ストアのサイズ制限されたキャッシュを提供するバッキング・マップを定義します。

<versioned-backing-map-scheme>

オプション

versioned-backing-map-schemeは、read-write-backing-map-schemeの拡張で、永続ストアのサイズ制限されたキャッシュを定義します。ここでは、オブジェクトのバージョニングを使用して、永続ストアに書き込む必要のある更新が判断されます。



backup-storage

使用場所: distributed-scheme

説明

backup-storage要素は、パーティション・キャッシュのバックアップ記憶域のタイプと構成を指定します。

要素

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

表B-7 backup-storageのサブ要素

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

<type>

必須

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

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

  • off-heap: 対応する実装クラスは、com.tangosol.io.nio.DirectBufferManagerを使用するcom.tangosol.io.nio.BinaryMapです。

  • file-mapped: 対応する実装クラスは、com.tangosol.io.nio.MappedBufferManagerを使用するcom.tangosol.io.nio.BinaryMapです。

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

  • scheme: 対応する実装クラスは、scheme-name要素によってcaching-schemeとして指定されます。

デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された値です。詳細は、「DistributedCacheサービスのパラメータ」の<backup-storage/type>パラメータを参照してください。

<class-name>

オプション

customタイプにのみ適用されます。カスタム記憶域実装のクラス名を指定します。クラスにcom.tangosol.run.xml.XmlConfigurableインタフェースが実装される場合は、構成時にsetConfigメソッドが呼び出され、backup-storage要素全体が渡されます。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたbackup-storage/class-name値です。詳細は、「DistributedCacheサービスのパラメータ」を参照してください。

<directory>

オプション

file-mappedタイプにのみ適用されます。ディスク永続マネージャ(com.tangosol.util.nio.MappedBufferManager)がファイルを格納するときのルートとして使用するディレクトリのパス名を指定します。指定しない場合、または存在しないディレクトリを指定した場合は、デフォルトの場所にある一時ファイルが使用されます。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたbackup-storage/directory値です。詳細は、「DistributedCacheサービスのパラメータ」を参照してください。

<initial-size>

オプション

off-heapおよびfile-mappedタイプにのみ適用されます。バッファの初期サイズをバイト単位で指定します。この要素の値は、次の形式で指定する必要があります。

[\d]+[[.][\d]]?[K|k|M|m|G|g]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、210)

  • Mまたはm(メガ、220)

  • Gまたはg(ギガ、230)

値に係数が含まれていない場合は、Mが係数として適用されます。有効な値は、1からInteger.MAX_VALUE - 1023(つまり、2、147、482、624バイト)の間の正の整数です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたbackup-storage/initial-size値です。詳細は、「DistributedCacheサービスのパラメータ」を参照してください。

<maximum-size>

オプション

off-heapタイプおよびfile-mappedタイプにのみ適用されます。バッファの初期サイズをバイト単位で指定します。この要素の値は、次の形式で指定する必要があります。

[\d]+[[.][\d]]?[K|k|M|m|G|g]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、210)

  • Mまたはm(メガ、220)

  • Gまたはg(ギガ、230)

値に係数が含まれていない場合は、Mが係数として適用されます。有効な値は、1からInteger.MAX_VALUE - 1023(つまり、2、147、482、624バイト)の間の正の整数です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたbackup-storage/maximum-size値です。詳細は、「DistributedCacheサービスのパラメータ」を参照してください。

<scheme-name>

オプション

schemタイプにのみ適用されます。ConfigurableCacheFactoryのスキーム名を指定します。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたbackup-storage/scheme-name値です。詳細は、「DistributedCacheサービスのパラメータ」を参照してください。



bdb-store-manager

使用場所: external-schemepaged-external-schemeasync-store-manager


注意:

bdb-store-managerを使用するには、Berkeley Database JEのJavaクラス・ライブラリが必要です。詳細は、Berkeley Database JEの製品ページを参照してください。

http://www.oracle.com/technology/documentation/berkeley-db/je/index.html


説明

BDBストア・マネージャは、Berkeley Database JEのオンディスク埋込みデータベースを記憶域として使用する外部キャッシュの定義に使用されます。Berkelyベースのストア構成の例は、「オンディスク永続キャッシュ」および「ディスク・ベースのオーバーフローが設定されたインメモリー・キャッシュ」を参照してください。

実装

このストア・マネージャは、com.tangosol.io.bdb.BerkeleyDBBinaryStoreManagerクラスによって実装され、com.tangosol.io.bdb.BerkeleyDBBinaryStoreクラスによって実装されるBinaryStoreオブジェクトを生成します。

要素

表B-8は、bdb-store-manager要素で定義可能なサブ要素について説明しています。

表B-8 bdb-store-managerのサブ要素

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

<class-name>

オプション

Berkeley Database BinaryStoreManagerのカスタム実装を指定します。カスタム実装では、com.tangosol.io.bdb.BerkeleyDBBinaryStoreManagerクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<directory>

オプション

Berkeley Database JEのストア・マネージャがファイルを格納するルート・ディレクトリのパス名を指定します。指定しない場合、または存在しないディレクトリを指定した場合は、デフォルトの場所にある一時ディレクトリが使用されます。

<init-params>

オプション

追加のBerkeley DBの構成設定を指定します。Berkeley DBの構成の手順を参照してください。

http://www.oracle.com/technology/documentation/berkeley-db/je/GettingStartedGuide/administration.html#propertyfile

com.tangosol.run.xml.XmlConfigurableインタフェースを実装するカスタム実装で使用される、初期化パラメータの指定にも使用されます。

<store-name>

オプション

Berkeley Database JEのストア・マネージャがデータを格納するデータベース表名を指定します。このパラメータを指定すると、bdb-store-managerでは非一時(永続)データベース・インスタンスが使用されます。これは、非一時ストアのキャッシュ・ローダーでバッキングされるローカル・キャッシュを対象としてのみ提供されるもので、この機能により、ローカル・キャッシュには起動時にディスクからデータが事前移入されるようになります。この設定は、レプリケーション・キャッシュおよび分散キャッシュでは有効にしないでください。通常、<store-name>要素は未指定のままにして、一時記憶域が使用されることを示す必要があります。

このプロパティを指定する場合は、{cache-name}マクロを使用することをお薦めします。{cache-name}マクロの詳細は、「パラメータ・マクロの使用方法」を参照してください。



bundle-config

使用場所: operation-bundling

説明

bundle-config要素は、1つ以上のバンドル可能な操作に対するバンドル方針の構成を指定します。

要素

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

表B-9 bundle-configのサブ要素

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

<auto-adjust>

オプション

(実行時統計に基づく)preferred-size値の自動調整を許可するかどうかを指定します。

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

<delay-millis>

オプション

個別の実行リクエストをバンドルして対応するバルク操作にまとめて渡すため、各実行リクエストに許容される最大遅延時間をミリ秒単位で指定します。指定された遅延時間内にpreferred-sizeしきい値に達した場合は、バンドルが即座に処理されます。

有効な値は正の数値です。デフォルト値は1です。

<operation-name>

必須

複数のスレッドに対して同時実行される呼出しを、機能的に類似した1つのバルク操作にバンドルする操作名を指定します。バルク操作は、単一の引数でなく、引数のコレクションを取ります。

有効な値は、バンドル構成のコンテキストによって異なります。<cachestore-scheme>での有効な操作は次のとおりです。

  • load"

  • store

  • erase

<distributed-scheme>および<remote-cache-scheme>での有効な操作は次のとおりです。

  • get

  • put

  • remove

いずれの場合も、すべての有効な操作に対応するallという擬似操作があります。デフォルト値はallです。

<preferred-size>

オプション

バンドル・サイズのしきい値を指定します。バンドル・サイズがこの値に達すると、対応するバルク操作が即座に起動されます。この値は、コンテキスト固有の単位で測定されます。

有効な値は、0(バンドルが無効)または正の値です。デフォルト値は0です。

<thread-threshold>

オプション

個別の(非バンドル)リクエストを同時実行することが要求されるスレッドの最小数を指定します。スレッド数がこの値を超えると、バンドル機能がパススルー・モードからバンドル・モードに切り替わります。

有効な値は正の数値です。デフォルト値は4です。



cache-config

ルート要素

説明

cache-config要素は、キャッシュ構成ディスクリプタcoherence-cache-config.xmlのルート要素です。このドキュメントの詳細は、「キャッシュ構成デプロイメント・ディスクリプタ」を参照してください。

高レベルのキャッシュ構成は、キャッシュ・スキームとキャッシュ・スキーム・マッピングで構成されます。キャッシュ・スキームには、(データベースでバッキングされる分散キャッシュなど)キャッシュのタイプを記述します。キャッシュのマッピングには、特定のキャッシュ名に対して使用されるスキームを定義します。

要素

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

表B-10 cache-configのサブ要素

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

<caching-scheme-mapping>

必須

キャッシュ名に基づいて、キャッシュに使用されるキャッシュ・スキームを指定します。

<caching-schemes>

必須

クラスタ内で使用可能なキャッシュ・スキームを定義します。

<defaults>

オプション

ファクトリ全体のデフォルト設定を定義します。



cache-mapping

使用場所: caching-scheme-mapping

説明

cache-mapping要素によって、特定のキャッシュ名またはパターンで使用されるcaching-schemesが指定されます。

要素

表B-11は、cache-mapping要素で定義可能なサブ要素について説明しています。

表B-11 cache-mappingのサブ要素

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

<cache-name>

必須

キャッシュ名または名前のパターンを指定します。この名前はキャッシュ・ファクトリ内で一意です。サポートされるキャッシュ名のパターンは次のとおりです。

  • MyCacheのような完全一致。

  • My*のような接頭辞の一致。Myで始まるすべてのキャッシュ名が一致します。

  • 任意の一致(*)。すべてのキャッシュ名に一致します。

パターンは特異性の高い順に一致します(可能なかぎり、特異性のある定義から選択されます)。たとえば、MyCacheMy*の両方のマッピングが指定されている場合は、MyCacheマッピングのスキームを使用してMyCacheというキャッシュが構成されます。

<scheme-name>

必須

キャッシュ・スキーム名を記述します。この名前は構成ファイル内で一意です。キャッシュ・スキームはcaching-schemes要素で構成されます。

<init-params>

オプション

置換可能なキャッシュ・スキーム・パラメータの指定を可能にします。キャッシュ・スキームの解析時に、形式param-nameの置換可能パラメータが検出されると、そのパラメータが対応するパラメータ値に置換されます。次のキャッシュのマッピング例を参照してください。

<cache-mapping>
  <cache-name>My*</cache-name>
  <scheme-name>my-scheme</scheme-name>
  <init-params>
    <init-param>
      <param-name>cache-loader</param-name>
      <param-value>com.acme.MyCacheLoader</param-value>
    </init-param>
    <init-param>
      <param-name>size-limit</param-name>
      <param-value>1000</param-value>
    </init-param>
  </init-params>
</cache-mapping>

My*に一致するすべてのキャッシュ名において、対応するcache-scheme要素の任意の部分にcache-loaderリテラルが存在すると、すべての対象リテラルが文字列com.acme.MyCacheLoaderに置換され、リテラルのsize-limitが値1000に置換されます。



cache-service-proxy

使用場所: proxy-config

説明

cache-service-proxy要素には、プロキシ・サービスによって管理されるキャッシュ・サービス・プロキシの構成情報を記述します。

要素

表B-12は、cache-service-proxy要素で定義可能なサブ要素について説明しています。

表B-12 cache-service-proxyのサブ要素

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

<enabled>

オプション

キャッシュ・サービス・プロキシが有効化されているかどうかを指定します。無効化されている場合、クライアントはプロキシ・キャッシュにアクセスできません。有効な値は、trueまたはfalseです。デフォルト値はtrueです。

<lock-enabled>

オプション

リモート・クライアントからのロック・リクエストをプロキシ・キャッシュで許可するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。

<read-only>

オプション

リモート・クライアントからのキャッシュ更新リクエストをプロキシ・キャッシュで禁止するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。

<class-name>

オプション

com.tangosol.net.CacheServiceインタフェースを実装するクラスの完全修飾名を指定します。このクラスは、必要に応じてカスタム処理を実装するため、クライアントとプロキシされるキャッシュ・サービス間のインターセプタとして機能します。たとえば、このクラスを使用して、プロキシされるキャッシュ・サービスの使用を許可する前に認可チェックを行うことができます。

<init-params>

オプション

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



cachestore-scheme

使用場所: local-schemeread-write-backing-map-schemeversioned-backing-map-scheme

説明

キャッシュ・ストア・スキームは、キャッシュをバックエンドのデータ・ストアに接続するメカニズムを定義します。キャッシュ・ストア・スキームでは、読取り/書込み機能を提供するcom.tangosol.net.cache.CacheStoreインタフェース、または読取り専用のcom.tangosol.net.cache.CacheLoaderインタフェースを実装するクラスを使用します。これらのインタフェースのカスタム実装を生成して、Coherenceを様々なデータ・ストアに接続することもできます。cachestore-schemeの使用例については、「データベースのキャッシュ」を参照してください。

要素

表B-13は、cachestore-scheme要素で定義可能なサブ要素について説明しています。

表B-13 cachestore-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。「スキームの継承の使用方法」を参照してください。

<class-scheme>

オプション

キャッシュ・ストアの実装を指定します。指定されたクラスでは、次のいずれかのインタフェースを実装する必要があります。

  • com.tangosol.net.cache.CacheStore: 読取り/書込み機能をサポートする場合

  • com.tangosol.net.cache.CacheLoader: 読取り専用機能をサポートする場合

<remote-cache-scheme>

オプション

キャッシュ・ストアの実装としてCoherence*Extendを使用するようcachestore-schemeを構成します。

<operation-bundling>

オプション

バンドル方針の構成情報を指定します。



caching-scheme-mapping

使用場所: cache-config

説明

キャッシュ名(または名前のパターン)とcaching-schemesとのマッピングを定義します。たとえば、名前がaccounts-で始まるキャッシュでは分散(distributed-scheme)キャッシュ・スキームを使用し、名前がrates-で始まるキャッシュではreplicated-schemeキャッシュ・スキームを使用するように定義できます。

要素

表B-14は、caching-scheme-mapping要素で定義可能なサブ要素について説明しています。

表B-14 caching-scheme-mappingのサブ要素

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

<cache-mapping>

必須

キャッシュ名と、このキャッシュで使用するキャッシュ・スキームとの単一バインディングを記述します。



caching-schemes

使用場所: cache-config

説明

caching-schemes要素は、一連のキャッシュ・スキーム要素を定義します。各キャッシュ・スキームは、キャッシュのタイプを定義します(データベースでバッキングされるパーティション・キャッシュ、LRUエビクション・ポリシーが指定されたローカル・キャッシュなど)。スキームのタイプはマッピング(「caching-scheme-mapping」を参照)を使用して実際のキャッシュにバインドされます。

要素

表B-15は、caching-schemes要素で定義可能な各スキーム・タイプについて説明しています。

表B-15 caching-schemesのサブ要素

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

<local-scheme>

オプション

on-heapキャッシュ記憶域を提供するキャッシュ・スキームを定義します。

<external-scheme>

オプション

off-heapキャッシュ記憶域(オンディスク・キャッシュなど)を提供するキャッシュ・スキームを定義します。

<paged-external-scheme>

オプション

時間ベースのページングを使用してサイズ制限される、off-heapキャッシュ記憶域を提供するキャッシュ・スキームを定義します。

<distributed-scheme>

オプション

キャッシュ・エントリの記憶域がクラスタ・ノード全体でパーティション化されるキャッシュ・スキームを定義します。

<transactional-scheme>

オプション

トランザクションが保証され、キャッシュ・エントリの記憶域がクラスタ・ノード全体でパーティション化されるキャッシュ・スキームを定義します。

<replicated-scheme>

オプション

各キャッシュ・エントリがすべてのクラスタ・ノードに格納されるキャッシュ・スキームを定義します。

<optimistic-scheme>

オプション

ペシミスティック・ロックではなくオプティミスティック・ロックを使用するレプリケーション・キャッシュ・スキームを定義します。

<near-scheme>

オプション

高速のローカル・フロント層と大規模なバック層のキャッシュで構成される2層キャッシュ・スキームを定義します。

<versioned-near-scheme>

オプション

オブジェクトのバージョニングを使用してフロント層とバック層の一貫性を維持するニア・スキームを定義します。

<overflow-scheme>

オプション

サイズ制限のあるフロント層のオーバーフローで削除されたエントリが大規模なバック層キャッシュに格納される2層キャッシュ・スキームを定義します。

<invocation-scheme>

オプション

クラスタ・ノード全体でカスタム操作をパラレルに実行するための起動サービスを定義します。

<read-write-backing-map-scheme>

オプション

永続ストアのキャッシュを提供するバッキング・マップ・スキームを定義します。

<versioned-backing-map-scheme>

オプション

オブジェクトのバージョニングを使用して、永続ストアに書き込む必要のある更新を判断するバッキング・マップ・スキームを定義します。

<remote-cache-scheme>

オプション

Coherence*Extendを使用してCoherenceクラスタ外部からのキャッシュへのアクセスを有効にするキャッシュ・スキームを定義します。

<class-scheme>

オプション

キャッシュのカスタム実装を使用してキャッシュ・スキームを定義します。カスタム実装では、java.util.Mapインタフェースを実装し、パラメータがゼロのpublicなコンストラクタを組み込む必要があります。さらに、CacheService以外によってMapのコンテンツが変更される可能性がある場合(たとえば、Mapが自身のエントリを定期的に自動失効させる場合やコンテンツ・サイズを制限する場合)、返されるオブジェクトはcom.tangosol.util.ObservableMapインタフェースを実装する必要があります。

<disk-scheme>

オプション

注意: Coherence 3.0以降、disk-scheme構成要素は非推奨になり、external-schemeおよびpaged-external-scheme構成要素に置き換えられています。



class-scheme

使用場所: caching-schemeslocal-schemedistributed-schemereplicated-schemeoptimistic-schemenear-schemeversioned-near-schemeoverflow-schemeread-write-backing-map-schemeversioned-backing-map-schemecachestore-schemelistenereviction-policyunit-calculator

説明

クラス・スキームは、任意のJavaオブジェクトをインスタンス化して、他のスキームでの使用を可能にするメカニズムを提供します。この要素を含むスキームによって、拡張の必要なクラスまたはインタフェースが指定されます。class-schemeの使用例については、「データベースのキャッシュ」を参照してください。

class-schemeでは、class-nameを使用して直接的に、またはclass-factory-nameおよびmethod-nameを使用して間接的にオブジェクトのインスタンス化を構成できます。class-schemeは、class-nameで構成するか、class-factory-namemethod-nameで構成する必要があります。

要素

表B-16は、class-scheme要素で定義可能なサブ要素について説明しています。

表B-16 class-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<class-name>

オプション

インスタンス化するJavaクラスの完全修飾名を記述します。このクラスは、含まれるスキームの記述に従って適切な実装クラスを拡張し、スーパークラスと完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<class-factory-name>

オプション

オブジェクトのインスタンス化でファクトリとして使用されるJavaクラスの完全修飾名を指定します。

<method-name>

オプション

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

<init-params>

オプション

com.tangosol.run.xml.XmlConfigurableインタフェースをサポートする実装によってアクセス可能な初期化パラメータ、または一致するシグネチャを持つpublicなコンストラクタを記述する初期化パラメータを指定します。



custom-store-manager

使用場所: external-schemepaged-external-schemeasync-store-manager

説明

外部キャッシュで使用するストア・マネージャのカスタム実装の作成および構成に使用されます。

要素

表B-17は、custom-store-manager要素で定義可能なサブ要素について説明しています。

表B-17 custom-store-managerのサブ要素

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

<class-name>

必須

ストア・マネージャの実装を指定します。指定したクラスは、com.tangosol.io.BinaryStoreManagerインタフェースを実装する必要があります。

<init-params>

オプション

初期化パラメータを指定します。これは、com.tangosol.run.xml.XmlConfigurableインタフェースを実装するストア・マネージャのカスタム実装で使用されます。



defaults

使用場所: cache-config

説明

defaults要素は、ファクトリ全体のデフォルト設定を定義します。この機能は、これらの設定を明示的に定義していないすべてのサービスで使用される、シリアライザおよびソケット・プロバイダのグローバル構成を有効化します。

要素

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

表B-18 defaultsのサブ要素

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

<serializer>

オプション

ユーザー定義型のシリアライズおよびデシリアライズに使用するcom.tangosol.io.Serializer実装のクラス構成情報を指定するか、またはオペレーション構成ファイルで定義されているシリアライザ・クラス構成を参照します(「serializers」を参照)。

<socket-provider>


ソケット・プロバイダの構成情報を指定するか、またはオペレーション・デプロイメント・ディスクリプタの<socket-providers>要素内の事前定義ソケット・プロバイダを参照します。事前定義ソケット・プロバイダは、そのid属性名(systemまたはssl)を使用して参照されます。例:

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

この設定で指定されるのは、Coherence*Extendサービスのデフォルト・ソケット・プロバイダのみです。TCMPソケット・プロバイダは、オペレーション構成の<unicast-listener>要素内で指定されます。



disk-scheme


注意:

Coherence 3.0以降、disk-scheme構成要素は非推奨になり、<external-scheme>および<paged-external-scheme>構成要素に置き換えられています。


distributed-scheme

使用場所: caching-schemesnear-schemeversioned-near-schemeoverflow-schemeversioned-backing-map-scheme

説明

distributed-schemeは、エントリの記憶域をクラスタ・ノード全体でパーティション化するキャッシュを定義します。パーティション・キャッシュの詳細は、「分散キャッシュ」を参照してください。様々なdistributed-schemeの構成例は、「パーティション・キャッシュ」を参照してください。

クラスタ化された並列処理制御

パーティション・キャッシュでは、クラスタ全体を対象とするキーベースのロック機能がサポートされるため、更新の欠落といった従来の問題を発生させることなく、クラスタ内のデータを変更できます。明示的ロックを行わずに実行された操作もすべてアトミックですが、キャッシュに格納された値がアトミック操作間で変更されない保証はありません。

キャッシュ・クライアント

パーティション・キャッシュ・サービスでは、クラスタの総記憶域には含まれないクラスタ・ノードの概念がサポートされます。記憶域が有効化されないノードはキャッシュ・クライアントと見なされます(<local-storage>サブ要素を参照)。

キャッシュ・パーティション

キャッシュ・エントリは複数の論理パーティションに均等にセグメント化されます(<partition-count>サブ要素を参照)。これらのパーティションの管理の役割は、特定のパーティション・サービス(<service-name>サブ要素を参照)を実行する、記憶域が有効化された(<local-storage>サブ要素を参照)クラスタ・ノード間で均等に分担されます。

キーの対応付け

デフォルトでは、各パーティションに割り当てられた特定のエントリ・セットはアプリケーションに対して透過的になります。場合によっては、特定の関連するエントリを同じクラスタ・ノード内に保持することが有用になります。key-associator(<key-associator>サブ要素を参照)を使用すると、関連するエントリを指定して、対応付けられたエントリをパーティション・キャッシュ・サービスで同じパーティション内(つまり、同じクラスタ・ノード上)に格納することができます。キーの対応付けは、アプリケーション・コード内からcom.tangosol.net.cache.KeyAssociationインタフェースを実装するキーを使用して指定することもできます。

キャッシュ記憶域(バッキング・マップ)

キャッシュの記憶域はbacking-map-schemeを使用して指定します(<backing-map-scheme>サブ要素を参照)。たとえば、バッキング・マップにlocal-schemeを使用するパーティション・キャッシュでは、記憶域が有効化されたクラスタ・ノードのメモリー内にキャッシュ・エントリが格納されます。

フェイルオーバー

フェイルオーバーを目的として、構成した数のキャッシュのバックアップ(<backup-count>サブ要素を参照)をクラスタ・ノード全体のbackup-storage(<backup-storage>サブ要素を参照)で管理できます。各バックアップもパーティションに分割されます。可能なかぎりバックアップ・パーティションはプライマリ・パーティションと同じ物理マシンには配置しません。クラスタ・ノードが突然クラスタから切断された場合は、そのパーティションの役割が自動的に既存のバックアップに再割当てされ、それらのパーティションの新しいバックアップが(リモート・ノード上に)作成されて、構成されたバックアップ数が維持されます。

パーティションの再分散

クラスタにおけるノードの参加および切断時には、バックグラウンドでパーティションの再分散が行われ、パーティション総数の管理の役割がクラスタ・ノード間で均等に分担されます。バックグラウンドでのパーティションの転送で消費される帯域幅の量は、transfer-threshold(<transfer-threshold>サブ要素を参照)によって制御されます。

要素

表B-19は、distributed-scheme要素で定義可能なサブ要素について説明しています。

表B-19 distributed-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<service-name>

オプション

このスキームで作成されたキャッシュを管理するサービス名を指定します。サービスは、tangosol-coherence.xmlディスクリプタの<services>要素で構成します。詳細は、付録A「オペレーション構成の要素」を参照してください。

<serializer>

オプション

ユーザー定義型のシリアライズおよびデシリアライズに使用するcom.tangosol.io.Serializer実装のクラス構成情報を指定するか、またはオペレーション構成ファイルで定義されているシリアライザ・クラス構成を参照します(「serializers」を参照)。

<listener>

オプション

キャッシュ上で発生しているイベントの通知を受け取るcom.tangosol.MapListenerの実装を指定します。

<backing-map-scheme>

オプション

キャッシュ・サーバー内でのエントリの格納に使用するキャッシュのタイプを指定します。

有効なスキームは次のとおりです。

ヒープ外バッキング・マップを使用する際は、対応する<backup-storage>をヒープ外用に構成することが重要です(可能であれば、backing-mapと同じスキームを使用します)。ここでヒープ外とは、JVMガベージ・コレクションが行われるヒープ領域外に一部またはすべてのエントリが格納される記憶域のことを指します。<overflow-scheme>や<external-scheme>などがあります。構成例については、「オーバーフローが設定されたパーティション・キャッシュ」を参照してください。

<partition-count>

オプション

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

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

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

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

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

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

有効値は正の整数です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された257です。「DistributedCacheサービスのパラメータ」のpartition-countパラメータを参照してください。

<key-associator>

オプション

キー間の対応付けを行い、対応付けられたキーの同一パーティションへの格納を可能にするクラスを指定します。この実装には、パラメータがゼロのpublicなコンストラクタが必要です。

<key-partitioning>

オプション

com.tangosol.net.partition.KeyPartitioningStrategyインタフェースを実装するクラスを指定します。これはパーティションにキーを割り当てる役割を果たします。この実装には、パラメータがゼロのpublicなコンストラクタが必要です。指定しない場合は、デフォルトのキー・パーティション化アルゴリズムが使用され、キーがパーティション間で均等にセグメント化されます。

<partition-listener>

オプション

com.tangosol.net.partition.PartitionListenerインタフェースを実装するクラスを指定します。

<backup-count>

オプション

パーティション・キャッシュ・サービスのうち、各保存単位のバックアップ・データをキャッシュに保持するメンバーの数を指定します。この値が0になっていると、異常終了した場合にキャッシュ内のデータの一部が失われます。この値がNになっていると、即座に終了したクラスタ・ノードの数がN以内の場合、キャッシュ・データが保持されます。サイズMのパーティション・キャッシュを維持する場合、クラスタ内の合計メモリー使用量はクラスタ・ノードの数に依存するのではなく、M*(N+1)となります。推奨値は0または1です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたbackup-count値です。tangosol-coherence.xmlディスクリプタに指定されたbackup-countパラメータの値を参照してください。詳細は、「DistributedCacheサービスのパラメータ」を参照してください。

<backup-count-after- writebehind>

オプション

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

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

推奨値は0です。それ以外の場合は、この要素の指定を完全に省略してください。

<backup-storage>

オプション

パーティション・キャッシュのバックアップ記憶域のタイプと構成を指定します。

<thread-count>

オプション

パーティション・キャッシュ・サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。有効な値は、正の整数またはゼロです。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたthread-count値です。詳細は、「DistributedCacheサービスのパラメータ」のthread-countパラメータを参照してください。

<lease-granularity>

オプション

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

  • thread

  • member

値がthreadの場合、ロックはそのロックを取得したスレッドによって保持され、そのスレッドによってのみ解放されます。値がmemberの場合、ロックはクラスタ・ノードによって保持され、ロックを取得したクラスタ・ノード上で実行されるスレッドによって解放できます。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたlease-granularity値です。詳細は、「DistributedCacheサービスのパラメータ」のlease-granularityパラメータを参照してください。

<transfer-threshold>

オプション

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

<local-storage>

オプション

クラスタ・ノードをクラスタの記憶域として機能させる(つまり、パーティションを保持する)かどうかを指定します。無効化した場合、そのノードはキャッシュ・クライアントと見なされます。

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

有効な値は、trueまたはfalseです。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたlocal-storage値です。詳細は、「DistributedCacheサービスのパラメータ」のlocal-storageパラメータを参照してください。

<autostart>

オプション

autostart要素は、キャッシュ・サーバー(つまり、com.tangosol.net.DefaultCacheServer)で使用することを目的としています。この要素は、このキャッシュ・スキームに関連付けられたキャッシュ・サービスをクラスタ・ノードで自動的に起動するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。

<task-hung-threshold>

オプション

タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。注意: ポストされたタスクがまだ開始されていない場合は、ハングと見なされません。この属性は、スレッド・プールが使用されている(thread-countの値が正の)場合にのみ適用されます。有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたtask-hung-threshold値です。詳細は、「DistributedCacheサービスのパラメータ」のtask-hung-thresholdパラメータを参照してください。

<task-timeout>

オプション

サービス・ワーカー・スレッド上で実行するリクエストのタイムアウト値をミリ秒単位で指定します。この属性は、スレッド・プールが使用されている(thread-countの値が正の)場合にのみ適用されます。ゼロを指定すると、service-guardianのデフォルトの<timeout-milliseconds>値が使用されます。有効な値は、負でない整数です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された値です。「DistributedCacheサービスのパラメータ」のtask-timeoutパラメータを参照してください。

<request-timeout>

オプション

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

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

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

  • タスクの実行時間

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

有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された値です。詳細は、「DistributedCacheサービスのパラメータ」のrequest-timeoutパラメータを参照してください。

<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(日数)

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

<service-failure-policy>

オプション

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

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

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

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

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

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

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

<member-listener>

オプション

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

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

<operation-bundling>

オプション

バンドル方針の構成情報を指定します。

<partitioned-quorum-policy-scheme>

オプション

パーティション・キャッシュ・サービス用のクォーラム・ポリシー設定を指定します。



external-scheme

使用場所: caching-schemesdistributed-schemereplicated-schemeoptimistic-schemenear-schemeversioned-near-schemeoverflow-schemeread-write-backing-map-schemeversioned-backing-map-scheme

説明

外部スキームを使用すると、JVMヒープ・ベースでないキャッシュを定義することで大容量の記憶域の使用が可能になります。様々な外部キャッシュの構成例は、「ローカル・キャッシュ(単一のJVMからアクセス可能)」を参照してください。

実装

このスキームは、次を使用して実装されます。

実装タイプは次の規則に従って選択されます。

プラッガブルなストレージ・マネージャ

外部スキームでは、プラッガブルなストア・マネージャを使用して、バイナリ・キー値のペアの格納と取得を行います。サポートされるストア・マネージャは次のとおりです。

サイズ制限のあるキャッシュ

このキャッシュはサイズ制限のあるキャッシュとして構成できます。これにより、キャッシュが最大許容サイズ(<high-units>サブ要素)に達すると、自動的に小さなサイズへのプルーニングが行われます。


注意:

ディスクベースのキャッシュに対するエビクションにはコストがかかる場合があります。その場合はpaged-external-schemeの使用を検討します。

エントリの有効期限

外部スキームでは、<expiry-delay>サブ要素の構成に従って、値の有効期間に基づいたエントリの自動失効がサポートされます。

永続性(長期記憶域)

外部キャッシュは一般に、大きなデータ・セットの一時記憶域(たとえば、overflow-schemeのバック層)として使用されます。ただし、一部の実装では非クラスタ・キャッシュの永続性がサポートされます。詳細は、bdb-store-manager<store-name>サブ要素およびlh-file-manager<manager-filename>サブ要素を参照してください。クラスタ化の永続性は、distributed-schemeread-write-backing-map-schemeを使用して構成します。

要素

表B-20は、external-scheme要素で定義可能なサブ要素について説明しています。

表B-20 external-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<class-name>

オプション

外部キャッシュのカスタム実装を指定します。カスタム実装では、次のいずれかのクラスを拡張する必要があります。

  • com.tangosol.net.cache.SerializationCache: サイズ制限のあるキャッシュ

  • com.tangosol.net.cache.SerializationMap: サイズ制限のないキャッシュ

  • com.tangosol.net.cache.SimpleSerializationMap: サイズ制限のないキャッシュ

また、スーパークラスと完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<init-params>

オプション

初期化パラメータを指定します。これは、com.tangosol.run.xml.XmlConfigurableインタフェースを実装する外部キャッシュのカスタム実装で使用されます。

<listener>

オプション

キャッシュ上で発生しているイベントの通知を受け取るcom.tangosol.util.MapListenerの実装を指定します。

<high-units>

オプション

キャッシュのサイズを制限するために使用されます。この要素には、プルーニングが開始されるまでキャッシュに配置できる単位の最大数を記述します。エントリは測定単位になります。この制限を超えると、キャッシュでプルーニング・プロセスが開始され、単位数がこの制限を下回るまで最低使用頻度のエントリが順番に削除されます。スキームのclass-name要素を使用すると、SerializationCacheにカスタム拡張を行って代替のエビクション・ポリシーを実装できます。有効な値は、正の整数またはゼロです。ゼロは制限がないことを示します。デフォルト値は0です。

<unit-calculator>

オプション

使用する単位換算カリキュレータのタイプを指定します。単位換算カリキュレータは、特定のオブジェクトのコスト(単位)の決定に使用されます。有効な値は次のとおりです。

  • FIXED: すべてのキャッシュ・オブジェクトに対して均等加重1を割り当てる単位換算カリキュレータ。

  • BINARY: オブジェクトに対して、そのオブジェクトをキャッシュに配置するために必要なメモリーのバイト数に相当する加重を割り当てる単位換算カリキュレータ。この場合は、パーティション・キャッシュ同様、対象オブジェクトがcom.tangosol.util.Binaryインスタンスであることが要求されます。詳細は、com.tangosol.net.cache.BinaryMemoryCalculatorを参照してください。

  • <class-scheme>: class-schemeとして指定されたカスタムの単位換算カリキュレータ。このスキームで指定されたクラスは、com/tangosol/net/cache/ConfigurableCacheMap.UnitCalculatorインタフェースを実装する必要があります。

この要素は、high-units要素が正の数値に設定されている場合にのみ使用されます。デフォルト値はFIXEDです。

<unit-factor>

オプション

unit-factor要素は、units、low-unitsおよびhigh-unitsの各プロパティの調整に使用する係数を指定します。たとえば、BINARY単位換算カリキュレータでは、係数1048576を使用してバイトをメガバイトに換算できます。

たとえば、BINARY単位換算カリキュレータでは、係数1048576を使用してバイトをメガバイトに換算できます。

注意: この要素は、units、low-unitsおよびhigh-unitsの各プロパティのタイプを32ビット値から64ビット値に変更することを回避するためにのみ導入されたものであり、high-units要素が正の数値に設定されている場合にのみ使用されます。Coherenceの今後のリリースでは、この要素が削除される見込みです。

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

<expiry-delay>

オプション

前回の更新からエントリが期限切れとなるまでの、キャッシュでエントリが保持される期間を指定します。期限切れになったキャッシュ内のエントリはクライアントからアクセス不能となり削除されます。

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

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、秒が単位として適用されます。値0は期限がないことを意味します。デフォルト値は0です。

注意: expiry-delayのパラメータ (cExpiryMillis)は整数として定義し、ミリ秒単位で表します。そのため、最大期間はInteger.MAX_VALUE(2147483647)ミリ秒数を超えることはできず、おおよそ24日間になります。

<async-store-manager>

オプション

他のストレージ・マネージャに対して非同期のストレージ・マネージャ・ラッパーを使用するよう外部キャッシュを構成します。「プラッガブルなストレージ・マネージャ」を参照してください。

<custom-store-manager>

オプション

ストレージ・マネージャのカスタム実装を使用するよう外部キャッシュを構成します。

<bdb-store-manager>

オプション

キャッシュ記憶域にBerkeley Database JEのオンディスク・データベースを使用するよう外部キャッシュを構成します。

<lh-file-manager>

オプション

キャッシュ記憶域にCoherence LHのオンディスク・データベースを使用するよう外部キャッシュを構成します。

<nio-file-manager>

オプション

キャッシュ記憶域にメモリーマップ・ファイルを使用するよう外部キャッシュを構成します。

<nio-memory-manager>

オプション

キャッシュ記憶域にJVMヒープ外のメモリー領域を使用するよう外部キャッシュを構成します。



identity-manager

使用場所: ssl

説明

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

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

要素

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

表B-21 identity-managerのサブ要素

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

<algorithm>

オプション

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

<provider>

オプション

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

<key-store>

オプション

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

<password>

必須

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



initiator-config

使用場所: remote-cache-schemeremote-invocation-scheme

説明

initiator-config要素は、TCP/IP接続イニシエータの構成情報を指定します。接続イニシエータを使用すると、Coherence*Extendクライアントからクラスタへの接続が有効になり、クライアントがクラスタに参加していなくても、クラスタの提供するサービスを使用できるようになります。

要素

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

表B-22 initiator-configのサブ要素

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

<outgoing-message-handler>

オプション

クライアントからクラスタへの接続の切断を検出するために接続イニシエータで使用される構成情報を指定します。

<serializer>

オプション

ユーザー定義型のシリアライズおよびデシリアライズに使用するcom.tangosol.io.Serializer実装のクラス構成情報を指定するか、またはオペレーション構成ファイルで定義されているシリアライザ・クラス構成を参照します(「serializers」を参照)。

<tcp-initiator>

オプション

TCP/IPを介してクラスタに接続する、接続イニシエータの構成情報を指定します。

<use-filters>

オプション

この接続イニシエータで使用するフィルタ名のリストを記述します。たとえば、<use-filter>を次のように指定すると、すべてのネットワーク・メッセージに対してgzip圧縮がアクティブ化されるため、WANおよび低帯域幅ネットワークのパフォーマンスが大幅に向上します。

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


init-param

使用場所: init-params

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

要素

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

表B-23 init-paramのサブ要素

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

<param-name>

オプション

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

<class-name>com.mycompany.cache.CustomCacheLoader</class-name>
<init-params>
  <init-param>
    <param-name>sTableName</param-name>
    <param-value>EmployeeTable</param-value>
  </init-param>
  <init-param>
    <param-name>iMaxSize</param-name>
    <param-value>2000</param-value>
  </init-param>
</init-params>

<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

例:

<class-name>com.mycompany.cache.CustomCacheLoader</class-name>
<init-params>
  <init-param>
    <param-type>java.lang.String</param-type>
    <param-value>EmployeeTable</param-value>
  </init-param>
  <init-param>
    <param-type>int</param-type>
    <param-value>2000</param-value>
  </init-param>
</init-params>

<param-value>

オプション

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



init-params

使用場所: class-schemecache-mapping

説明

一連の初期化パラメータを、名前と値のペアで定義します。init-paramsの使用例については、「データベースのパーティション・キャッシュ」を参照してください。

要素

表B-24は、init-params要素で定義可能なサブ要素について説明しています。

表B-24 init-paramsのサブ要素

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

<init-param>

オプション

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



instance

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

説明

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

要素

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

表B-25 instanceのサブ要素

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

<class-name>

オプション

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

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

<class-factory-name>

オプション

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

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

<method-name>

オプション

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

<init-params>

オプション

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



invocation-scheme

使用場所: caching-schemes

説明

起動サービスを定義します。起動サービスは、任意の数のクラスタ・ノード上でカスタム操作をパラレルに実行するために使用します。詳細は、com.tangosol.net.InvocationService APIを参照してください。

要素

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

表B-26 invocation-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<service-name>

オプション

このスキームからの起動を管理するサービス名を指定します。

<serializer>

オプション

ユーザー定義型のシリアライズおよびデシリアライズに使用するcom.tangosol.io.Serializer実装のクラス構成情報を指定するか、またはオペレーション構成ファイルで定義されているシリアライザ・クラス構成を参照します(「serializers」を参照)。

<thread-count>

オプション

起動サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。有効な値は、正の整数またはゼロです。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたthread-count値です。「InvocationServiceのパラメータ」のthread-countパラメータを参照してください。

<autostart>

オプション

autostart要素は、キャッシュ・サーバー(つまり、com.tangosol.net.DefaultCacheServer)で使用することを目的としています。この要素は、このサービスをクラスタ・ノードで自動的に起動するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。

<task-hung-threshold>

オプション

タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。注意: ポストされたタスクがまだ開始されていない場合は、ハングと見なされません。この属性は、スレッド・プールが使用されている(thread-countの値が正の)場合にのみ適用されます。有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたtask-hung-threshold値です。「InvocationServiceのパラメータ」のtask-hung-thresholdパラメータを参照してください。

<task-timeout>

オプション

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

<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(日数)

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

<service-failure-policy>

オプション

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

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

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

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

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

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

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

<member-listener>

オプション

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

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

<request-timeout>

オプション

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

(1)実行側のノード(サーバー)にリクエストを配信するための所要時間(2)タスクが受信されてサービス・キューに入れられてから実行が開始されるまでの間隔(3)タスクの実行時間(4)クライアントに結果を返信するための所要時間

有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたrequest-timeout値です。「InvocationServiceのパラメータ」のrequest-timeoutパラメータを参照してください。



invocation-service-proxy

使用場所: proxy-config

説明

invocation-service-proxy要素には、プロキシ・サービスによって管理される起動サービス・プロキシの構成情報を記述します。

要素

表B-27は、invocation-service-proxy要素で定義可能なサブ要素について説明しています。

表B-27 invocation-service-proxyのサブ要素

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

<enabled>

オプション

起動サービス・プロキシが有効化されているかどうかを指定します。無効化されている場合、クライアントはプロキシ・サービスJVMでInvocableオブジェクトを実行できません。有効な値は、trueまたはfalseです。デフォルト値はtrueです。

<class-name>

オプション

com.tangosol.net.InvocationServiceインタフェースを実装するクラスの完全修飾名を指定します。このクラスは、必要に応じてカスタム処理を実装するため、クライアントとプロキシされる起動サービス間のインターセプタとして機能します。たとえば、このクラスを使用して、プロキシされる起動サービスの使用を許可する前に認可チェックを行うことができます。

<init-params>

オプション

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



jms-acceptor


注意:

Coherence*Extend-JMSのサポートは非推奨になりました。

使用場所: acceptor-config

説明

jms-acceptor要素は、Coherence*ExtendクライアントからのJMSを介した接続を受け入れる接続アクセプタの構成情報を指定します。詳細および構成例については、『Oracle Coherenceクライアント・ガイド』を参照してください。

要素

表B-28は、jms-acceptor要素で定義可能なサブ要素について説明しています。

表B-28 jms-acceptorのサブ要素

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

<queue-connection-factory-name>

必須

接続アクセプタで使用されるJMS QueueConnectionFactoryのJNDI名を指定します。

<queue-name>

必須

接続アクセプタで使用されるJMS QueueのJNDI名を指定します。



jms-initiator


注意:

Coherence*Extend-JMSのサポートは非推奨になりました。

使用場所: initiator-config

説明

jms-acceptor要素は、Coherence*Extendクライアントからリモート・クラスタへのJMSを介した接続を有効にする接続イニシエータの構成情報を指定します。詳細および構成例については、『Oracle Coherenceクライアント・ガイド』を参照してください。

要素

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

表B-29 jms-initiatorのサブ要素

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

<queue-connection-factory-name>

必須

接続イニシエータで使用されるJMS QueueConnectionFactoryのJNDI名を指定します。

<queue-name>

必須

接続イニシエータで使用されるJMS QueueのJNDI名を指定します。

<connect-timeout>

オプション

接続アクセプタとの接続を確立するまで待機する最大時間を指定します。この要素の値は、次の形式で指定する必要があります。

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は無限のタイムアウトです。



key-associator

使用場所: distributed-scheme

説明

キーの対応付けを決定するcom.tangosol.net.partition.KeyAssociatorの実装を指定します。これにより、関連するキーを同じパーティションに格納することができます。

また、com.tangosol.net.cache.KeyAssociationインタフェースを実装することにより、キャッシュのキーで関連付けを管理することもできます。

要素

表B-30は、key-associator要素で定義可能なサブ要素について説明しています。

表B-30 key-associatorのサブ要素

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

<class-name>

必須

com.tangosol.net.partition.KeyAssociatorインタフェースを実装するクラスの名前。この実装には、パラメータがゼロのpublicなコンストラクタが必要です。デフォルト値は、tangosol.coherence.xmlディスクリプタに指定されたkey-associator/class-nameパラメータの値です。詳細は、「DistributedCacheサービスのパラメータ」を参照してください。



key-partitioning

使用場所: distributed-scheme

説明

キーを格納するパーティションを決定するcom.tangosol.net.partition.KeyPartitioningStrategyの実装を指定します。

要素

表B-31は、key-partitioning要素で定義可能なサブ要素について説明しています。

表B-31 key-partitioningのサブ要素

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

<class-name>

必須

com.tangosol.net.partition.KeyPartitioningStrategyインタフェースを実装するクラスの名前。この実装には、パラメータがゼロのpublicなコンストラクタが必要です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたkey-partitioning/class-nameパラメータの値です。詳細は、「DistributedCacheサービスのパラメータ」を参照してください。



key-store

使用場所: identity-managertrust-manager

説明

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

要素

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

表B-32 key-storeのサブ要素

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

<url>

必須

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

<password>

オプション

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

<type>

オプション

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



lh-file-manager

使用場所: external-schemepaged-external-schemeasync-store-manager

説明

記憶域にCoherence LHのオンディスク埋込みデータベースを使用するストア・マネージャを構成します。LHベースのストア構成の例は、「オンディスク永続キャッシュ」および「ディスク・ベースのオーバーフローが設定されたインメモリー・キャッシュ」を参照してください。

実装

com.tangosol.io.lh.LHBinaryStoreManagerクラスによって実装されます。このクラスで作成されるBinaryStoreオブジェクトは、javadoc:com.tangosol.io.lh.LHBinaryStoreのインスタンスです。

要素

表B-33は、lh-file-manager要素で定義可能なサブ要素について説明しています。

表B-33 lh-file-managerのサブ要素

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

<class-name>

オプション

LH BinaryStoreManagerのカスタム実装を指定します。カスタム実装では、com.tangosol.io.lh.LHBinaryStoreManagerクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<init-params>

オプション

初期化パラメータを指定します。これは、com.tangosol.run.xml.XmlConfigurableインタフェースを実装するLHファイル・マネージャのカスタム実装で使用されます。

<directory>

オプション

LHファイル・マネージャがファイルを格納するルート・ディレクトリのパス名を指定します。指定しない場合、または存在しないディレクトリを指定した場合には、デフォルトの場所にある一時ファイルが使用されます。

<file-name>

オプション

LHファイル・マネージャがデータを格納する非一時(永続)ファイルの名前を指定します。このパラメータを指定すると、lh-file-managerでは非一時データベース・インスタンスが使用されます。このパラメータは、非一時ファイルのキャッシュ・ローダーでバッキングされるローカル・キャッシュを対象としてのみ使用されるもので、これにより、ローカル・キャッシュには起動時にディスク・ファイルからデータが事前移入されるようになります。指定する際は、「パラメータ・マクロの使用」で説明されている{cache-name}マクロを使用することをお薦めします。通常このパラメータは未指定のままにして、一時記憶域が使用されることを示す必要があります。



listener

使用場所: local-schemeexternal-schemepaged-external-schemedistributed-schemereplicated-schemeoptimistic-schemenear-schemeversioned-near-schemeoverflow-schemeread-write-backing-map-schemeversioned-backing-map-scheme

説明

Listener要素は、キャッシュ上で発生しているイベントの通知を受け取るcom.tangosol.util.MapListenerの実装を指定します。

要素

次の表は、listener要素で定義可能なサブ要素について説明しています。

表B-34 listenerのサブ要素

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

<class-scheme>

必須

使用するlistener実装の完全なクラス名を指定します。指定したクラスは、com.tangosol.util.MapListenerインタフェースを実装する必要があります。



local-address

使用場所: tcp-acceptortcp-initiator

説明

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

local-address要素はTCP/IPアクセプタ定義内で使用され、(接続アクセプタによって開かれる)TCP/IPサーバー・ソケットがバインドされるアドレスおよびポートを指定します。このソケットは、プロキシ・サービスにより、Coherence*Extendクライアントからの接続の受け入れに使用されます。次の例で、サーバー・ソケットは192.168.0.2:9099にバインドされます。

<local-address>
  <address>192.168.0.2</address>
  <port>9099</port>
</local-address>

local-address要素はTCP/IPイニシエータ定義内で使用され、(接続イニシエータによって開かれる)TCP/IPクライアント・ソケットがバインドされるローカル・アドレスおよびポートを指定します。ソケットは、リモート・サービスにより、クラスタ上のプロキシ・サービスへの接続に使用されます。次の例で、クライアント・ソケットは、192.168.0.1のポート9099にバインドされます。

<local-address>
  <address>192.168.0.1</address>
  <port>9099</port>
</local-address>

要素

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

表B-35 local-addressのサブ要素

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

<address>

オプション

TCP/IPソケットがリスニングおよび公開を行うアドレス(IPまたはDNS名)を指定します。

<port>

オプション

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

TCP/IPサーバーのコンテキストで使用される場合(つまり、TCPアクセプタ用)、ポートの子要素が必要です。



local-scheme

使用場所: caching-schemesdistributed-schemereplicated-schemeoptimistic-schemenear-schemeversioned-near-schemeoverflow-schemeread-write-backing-map-schemeversioned-backing-map-schemebacking-map-scheme

説明

ローカル・キャッシュ・スキームは、インメモリー・ローカル・キャッシュを定義します。ローカル・キャッシュは一般に、他のキャッシュ・スキーム内にネストされます(near-schemeのフロント層としてなど)。様々なローカル・キャッシュの構成例は、「パーティション・キャッシュのローカル・キャッシュ(ニア・キャッシュ)」を参照してください。

実装

ローカル・キャッシュは、com.tangosol.net.cache.LocalCacheクラスによって実装されます。

外部ストアのキャッシュ

ローカル・キャッシュは外部のキャッシュ・ストアでバッキングできます(「cachestore-scheme」を参照)。キャッシュ・ミスでは、バックエンドのストアまでリードスルーしてデータが取得されます。書込み可能なストアが提供されている場合は、キャッシュへの書込みがキャッシュ・ストアにも同様に伝播します。キャッシュ・ストアに対する読取り/書込みアクセスの最適化については、「read-write-backing-map-scheme」を参照してください。

サイズ制限のあるキャッシュ

このキャッシュはサイズ制限のあるキャッシュとして構成できます。これにより、キャッシュが最大許容サイズ(<high-units>サブ要素を参照)に達すると、エビクション・ポリシー(<eviction-policy>サブ要素を参照)に従って削除対象エントリが選択され、指定されたより小さなサイズ(<low-units>サブ要素を参照)へのプルーニングが行われます。エントリとサイズの制限は、スキームの単位換算カリキュレータ(<unit-calculator>サブ要素を参照)によって計算された単位で測定されます。

エントリの有効期限

ローカル・キャッシュでは、値の有効期間に基づいたエントリの自動失効がサポートされます(<expiry-delay>サブ要素を参照)。

要素

表B-36は、local-scheme要素で定義可能なサブ要素について説明しています。

表B-36 local-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<service-name>

オプション

このスキームで作成されたキャッシュを管理するサービス名を指定します。サービスは、tangosol-coherence.xmlディスクリプタの<services>要素で構成します。詳細は、付録A「オペレーション構成の要素」を参照してください。

<class-name>

オプション

ローカル・キャッシュのカスタム実装を指定します。カスタム実装では、com.tangosol.net.cache.LocalCacheクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<init-params>

オプション

初期化パラメータを指定します。これは、com.tangosol.run.xml.XmlConfigurableインタフェースを実装するローカル・キャッシュのカスタム実装で使用されます。

<eviction-policy>

オプション

使用するエビクション・ポリシーのタイプを指定します。有効な値は次のとおりです。

  • LRU: 最低使用頻度(Least Recently Used)によるエビクション・ポリシーでは、最後にアクセスされた時間を基準として削除対象エントリが選択されます。アクセスされていない期間が最も長いエントリから順番に削除されます。

  • LFU: 最低アクセス頻度(Least Frequently Used)によるエビクション・ポリシーでは、アクセス頻度を基準として削除対象エントリが選択されます。アクセス頻度が最も低いエントリから順番に削除されます。

  • HYBRID: ハイブリッド・エビクション・ポリシーでは、アクセス頻度およびアクセス時間の組合せ(加重スコア)を基準として削除対象エントリが選択されます。アクセス頻度が低く、アクセスされていない期間が最も長いエントリから順番に削除されます。

  • <class-scheme>: class-schemeとして指定されたカスタム・エビクション・ポリシー。このスキーム内で指定されるクラスは、com.tangosol.net.cache.LocalCache.EvictionPolicyインタフェースを実装する必要があります。

デフォルト値はHYBRIDです。

<high-units>

オプション

キャッシュのサイズを制限するために使用されます。この要素には、プルーニングが開始されるまでキャッシュに配置できる単位の最大数を記述します。別のunit-calculator(<unit-calculator>サブ要素を参照)によってオーバーライドされないかぎり、エントリは測定単位になります。この制限を超えると、キャッシュでプルーニング・プロセスが開始され、エビクション・ポリシーに従ってエントリが順番に削除されます。有効な値は、正の整数またはゼロです。ゼロは制限がないことを示します。デフォルト値は0です。

<low-units>

オプション

プルーニングを実行する際にどこまでキャッシュを小さくするかを示す単位の最小数を記述します。プルーニングによりキャッシュにこの数の単位が含まれるとはかぎりませんが、これより少ない数になることはありません。別のunit-calculator(<unit-calculator>サブ要素を参照)によってオーバーライドされないかぎり、エントリは測定単位になります。プルーニングの実行時は、このサイズに達するまでエビクション・ポリシーに従ってエントリが順番に削除されていきます。有効な値は、正の整数またはゼロです。ゼロはデフォルト値を意味します。デフォルト値はhigh-units設定の75%です(つまり、high-unitsの設定が1000である場合、この値は750になります)。

<unit-calculator>

オプション

使用する単位換算カリキュレータのタイプを指定します。単位換算カリキュレータは、特定のオブジェクトのコスト(単位)の決定に使用されます。有効な値は次のとおりです。

  • FIXED: すべてのキャッシュ・オブジェクトに対して均等加重1を割り当てる単位換算カリキュレータ。

  • BINARY: オブジェクトに対して、そのオブジェクトをキャッシュに配置するために必要なメモリーのバイト数に相当する加重を割り当てる単位換算カリキュレータ。この場合は、パーティション・キャッシュ同様、対象オブジェクトがcom.tangosol.util.Binaryインスタンスであることが要求されます。詳細は、com.tangosol.net.cache.BinaryMemoryCalculatorを参照してください。

  • <class-scheme>: class-schemeとして指定されたカスタムの単位換算カリキュレータ。このスキームで指定されたクラスは、com/tangosol/net/cache/ConfigurableCacheMap.UnitCalculatorインタフェースを実装する必要があります。

この要素は、high-units要素が正の数値に設定されている場合にのみ使用されます。デフォルト値はFIXEDです。

<unit-factor>

オプション

unit-factor要素は、units、low-unitsおよびhigh-unitsの各プロパティの調整に使用する係数を指定します。たとえば、BINARY単位換算カリキュレータでは、係数1048576を使用してバイトをメガバイトに換算できます。

たとえば、BINARY単位換算カリキュレータでは、係数1048576を使用してバイトをメガバイトに換算できます。

注意: この要素は、units、low-unitsおよびhigh-unitsの各プロパティのタイプを32ビット値から64ビット値に変更することを回避するためにのみ導入されたものであり、high-units要素が正の数値に設定されている場合にのみ使用されます。Coherenceの今後のリリースでは、この要素が削除される見込みです。

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

<expiry-delay>

オプション

前回の更新からエントリが期限切れとなるまでの、キャッシュでエントリが保持される期間を指定します。期限切れになったキャッシュ内のエントリはクライアントからアクセス不能となり削除されます。期限切れエントリの読取りを試行すると、対象のエントリが構成済のキャッシュ・ストア(<cachestore-scheme>を参照)からリロードされます。

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

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、秒が単位として適用されます。値0は期限がないことを意味します。デフォルト値は0です。

注意: expiry-delayのパラメータ (cExpiryMillis)は整数として定義し、ミリ秒単位で表します。そのため、最大期間はInteger.MAX_VALUE(2147483647)ミリ秒数を超えることはできず、おおよそ24日間になります。

<cachestore-scheme>

オプション

キャッシュの対象となるストアを指定します。指定しない場合、キャッシュ・データはメモリー内にのみ配置され、そのキャッシュに対して実行された操作のみを反映します。

<pre-load>

オプション

キャッシュがCacheLoader(またはCacheStore)オブジェクトからデータを事前ロードするかどうかを指定します。有効な値は、truefalseです。デフォルト値はfalseです。

<listener>

オプション

キャッシュ上で発生しているイベントの通知を受け取るcom.tangosol.util.MapListenerの実装を指定します。



near-scheme

使用場所: caching-schemes

説明

near-schemeは、フロント層(<front-scheme>サブ要素を参照)とバック層(<back-scheme>サブ要素を参照)で構成される2層キャッシュを定義します。フロント層にはバック層のサブセットがキャッシュされます。一般にフロント層は高速でサイズ制限があり、バック層は低速ですが大容量になります。一般的なデプロイでは、フロント層にはlocal-schemeが、バック層にはdistributed-schemeが使用されます。その結果、大規模なパーティション・キャッシュの一部がローカル・インメモリーにキャッシュされ、非常に高速な読取りアクセスが実現されます。ニア・キャッシュの詳細は、「ニア・キャッシュ」を参照してください。ニア・キャッシュの構成例については、「パーティション・キャッシュのローカル・キャッシュ(ニア・キャッシュ)」を参照してください。

実装

ニア・スキームは、com.tangosol.net.cache.NearCacheクラスによって実装されます。

フロント層の無効化

無効化方針(<invalidation-strategy>サブ要素を参照)を指定することで、ニア・キャッシュのフロント層およびバック層の同期を保持するために使用される方針を定義します。この方針に従って、バック層で発生した特定のイベントをリスニングしてニア・キャッシュのフロント部分を自動的に更新(または無効化)するようニア・キャッシュが構成されます。

要素

表B-37は、near-scheme要素で定義可能なサブ要素について説明しています。

表B-37 near-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<class-name>

オプション

ニア・キャッシュのカスタム実装を指定します。カスタム実装では、com.tangosol.net.cache.NearCacheクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<init-params>

オプション

初期化パラメータを指定します。これは、com.tangosol.run.xml.XmlConfigurableインタフェースを実装するニア・キャッシュのカスタム実装で使用されます。

<listener>

オプション

キャッシュ上で発生しているイベントの通知を受け取るcom.tangosol.util.MapListenerの実装を指定します。

<front-scheme>

必須

フロント層キャッシュの作成に使用するcache-schemeを指定します。有効な値は次のとおりです。

front-schemeのエビクション・ポリシーによって、ローカルにキャッシュされるエントリが定義されます。例:

<front-scheme>
  <local-scheme>
    <eviction-policy>HYBRID</eviction-policy>
    <high-units>1000</high-units>
  </local-scheme>
</front-scheme>

<back-scheme>

必須

バック層キャッシュの作成に使用するcache-schemeを指定します。有効な値は次のとおりです。

例:

<back-scheme>
  <distributed-scheme>
    <scheme-ref>default-distributed</scheme-ref>
  </distributed-scheme>
</back-scheme>

<invalidation-strategy>

オプション

フロント層およびバック層の同期を保持するために使用される方針を指定します。詳細は、com.tangosol.net.cache.NearCacheを参照してください。有効な値は次のとおりです。

  • none: キャッシュに対して無効化イベントをリスニングしないよう指示します。この方針は、現在値とはかぎらないデータの使用がビジネス要件で許可されており、パフォーマンスおよびスケーラビリティがともに低い場合に最適です。データの鮮度は十分に簡潔なエビクション・ポリシーを使用することで保証されます。最悪の場合は、パフォーマンスが標準の分散キャッシュと同程度になります。

  • present: ニア・キャッシュに対して、フロント・マップに現存するアイテムに関連したバック・マップ・イベントのみをリスニングするよう指示します。この方針は、クラスタ・ノードにスティッキーなデータ・アクセス・パターン(スティッキーなロード・バランサによるHTTPセッション管理など)がある場合に最適です。

  • all: ニア・キャッシュに対してすべてのバック・マップ・イベントをリスニングするよう指示します。この方針は、読取り頻度の高いアクセス・パターンにおいて、各クラスタ・メンバーのフロント・キャッシュ間に大量のオーバーラップがある場合に最適です。

  • auto: ニア・キャッシュに対して、present方針とall方針をキャッシュ統計に基づいて自動的に切り替えるよう指示します。

デフォルト値はautoです。

<autostart>

オプション

autostart要素は、キャッシュ・サーバー(つまり、com.tangosol.net.DefaultCacheServer)で使用することを目的としています。これは、このキャッシュ・スキームに関連付けられたキャッシュ・サービスをクラスタ・ノードで自動的に起動するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。



nio-file-manager

使用場所: external-schemepaged-external-schemeasync-store-manager

説明

記憶域にメモリーマップ・ファイルを使用する外部ストアを構成します。

実装

このストア・マネージャは、com.tangosol.io.nio.MappedStoreManagerクラスによって実装されます。このクラスで作成されるBinaryStoreオブジェクトは、com.tangosol.io.nio.BinaryMapStoreのインスタンスです。

要素

表B-38は、nio-file-manager要素で定義可能なサブ要素について説明しています。

表B-38 nio-file-managerのサブ要素

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

<class-name>

オプション

ローカル・キャッシュのカスタム実装を指定します。カスタム実装では、com.tangosol.io.nio.MappedStoreManagerクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<init-params>

オプション

初期化パラメータを指定します。これは、com.tangosol.run.xml.XmlConfigurableインタフェースを実装するnio-file-managerのカスタム実装で使用されます。

<initial-size>

オプション

バッファの初期サイズをメガバイト単位で指定します。この要素の値は、次の形式で指定する必要があります。

[\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、210)

  • Mまたはm(メガ、220)

  • Gまたはg(ギガ、230)

値に係数が含まれていない場合は、Mが係数として適用されます。有効な値は、1からInteger.MAX_VALUE - 1023(つまり、2、147、482、624バイト)の間の正の整数です。デフォルト値は1MBです。

<maximum-size>

オプション

バッファの最大サイズをバイト単位で指定します。この要素の値は、次の形式で指定する必要があります。

[\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、210)

  • Mまたはm(メガ、220)

  • Gまたはg(ギガ、230)

値に係数が含まれていない場合は、Mが係数として適用されます。有効な値は、1からInteger.MAX_VALUE - 1023(つまり、2、147、482、624バイト)の間の正の整数です。デフォルト値は1024MBです。

<directory>

オプション

このマネージャがファイルを格納するルート・ディレクトリのパス名を指定します。指定しない場合、または存在しないディレクトリを指定した場合には、デフォルトの場所にある一時ファイルが使用されます。



nio-memory-manager

使用場所: external-schemepaged-external-schemeasync-store-manager

説明

記憶域にJVMヒープ外のメモリー領域を使用するストア・マネージャを構成します。つまり、Javaヒープ・サイズには影響せず、アプリケーションの一時停止の原因となり得る関連したJVMガベージ・コレクションのパフォーマンスにも影響しない構成です。NIOキャッシュの構成例については、「NIOインメモリー・キャッシュ」を参照してください。


注意:

NIOバッファの合計が64MBを超える場合、JVMはコマンドライン・パラメータを使用する必要があります。例: -XX:MaxDirectMemorySize=512M

実装

com.tangosol.io.nio.DirectStoreManagerクラスによって実装されます。このクラスで作成されるBinaryStoreオブジェクトは、com.tangosol.io.nio.BinaryMapStoreのインスタンスです。

要素

表B-39は、nio-memory-manager要素で定義可能なサブ要素について説明しています。

表B-39 nio-memory-managerのサブ要素

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

<class-name>

オプション

ローカル・キャッシュのカスタム実装を指定します。カスタム実装では、com.tangosol.io.nio.DirectStoreManagerクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<init-params>

オプション

初期化パラメータを指定します。これは、com.tangosol.run.xml.XmlConfigurableインタフェースを実装するnio-memory-managerのカスタム実装で使用されます。

<initial-size>

オプション

バッファの初期サイズをバイト単位で指定します。この要素の値は、次の形式で指定する必要があります。

[\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、210)

  • Mまたはm(メガ、220)

  • Gまたはg(ギガ、230)

値に係数が含まれていない場合は、Mが係数として適用されます。有効な値は、1からInteger.MAX_VALUE - 1023(つまり、2、147、482、624バイト)の間の正の整数です。デフォルト値は1MBです。

<maximum-size>

オプション

バッファの最大サイズをバイト単位で指定します。この要素の値は、次の形式で指定する必要があります。

[\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、210)

  • Mまたはm(メガ、220)

  • Gまたはg(ギガ、230)

値に係数が含まれていない場合は、Mが係数として適用されます。有効な値は、1からInteger.MAX_VALUE - 1023(つまり、2、147、482、624バイト)の間の正の整数です。デフォルト値は1024MBです。



operation-bundling

使用場所: cachestore-schemedistributed-schemeremote-cache-scheme

説明

operation-bundling要素は、特定のバンドル方針の構成情報を指定します。

バンドルとは、複数の個別の操作をいくつかの束(バンドル)にまとめるプロセスです。これは次のような場合に役立ちます。

実装の詳細は、com.tangosol.net.cache.AbstractBundlerを参照してください。

要素

表B-40は、operation-bundling要素のサブ要素について説明しています。

表B-40 operation-bundlingのサブ要素

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

<bundle-config>

必須

1つ以上のバンドル可能な操作を記述します。



optimistic-scheme

使用場所: caching-schemesnear-schemeversioned-near-schemeoverflow-scheme

オプティミスティック・スキームは、サービスを実行するすべてのクラスタ・ノードに自身の全データを完全にレプリケートするキャッシュを定義します(<service-name>サブ要素を参照)。オプティミスティック・キャッシュの詳細は、「オプティミスティック・キャッシュ」を参照してください。

オプティミスティック・ロック

replicated-schemedistributed-schemeのキャッシュと異なり、オプティミスティック・キャッシュでは並行処理制御(ロック)がサポートされません。エントリに対する個々の操作はアトミックですが、キャッシュに格納された値がアトミック操作間で変更されない保証はありません。並行処理制御がないため、オプティミスティック・キャッシュでは非常に高速な書込み操作が実現されます。

キャッシュ記憶域(バッキング・マップ)

キャッシュの記憶域はbacking-map-schemeを使用して指定します(<backing-map-scheme>サブ要素を参照)。たとえば、バッキング・マップにlocal-schemeを使用するオプティミスティック・キャッシュでは、キャッシュ・エントリがメモリー内に格納されます。

要素

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

表B-41 optimistic-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<service-name>

オプション

このスキームで作成されたキャッシュを管理するサービス名を指定します。サービスは、tangosol-coherence.xml<services>パラメータで構成します。詳細は、付録A「オペレーション構成の要素」を参照してください。

<serializer>

オプション

ユーザー定義型のシリアライズおよびデシリアライズに使用するcom.tangosol.io.Serializer実装のクラス構成情報を指定するか、またはオペレーション構成ファイルで定義されているシリアライザ・クラス構成を参照します(「serializers」を参照)。

<listener>

オプション

キャッシュ上で発生しているイベントの通知を受け取るcom.tangosol.util.MapListenerの実装を指定します。

<backing-map-scheme>

オプション

キャッシュ・サーバー内でのエントリの格納に使用するキャッシュのタイプを指定します。有効な値は次のとおりです。

キャッシュの一貫性を確保するため、オプティミスティック・キャッシュのバッキング・マップでは、キャッシュ・エントリのロードにリードスルー・パターンを使用しません。キャッシュ・サービスの外部でキャッシュアサイド・パターンを使用するか、クラスタ・キャッシュのリードスルーをサポートするdistributed-schemeに切り替えます。

<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(日数)

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

<service-failure-policy>

オプション

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

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

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

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

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

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

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

<member-listener>

オプション

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

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

<autostart>

オプション

autostart要素は、キャッシュ・サーバー(つまり、com.tangosol.net.DefaultCacheServer)で使用することを目的としています。この要素は、このキャッシュ・スキームに関連付けられたキャッシュ・サービスをクラスタ・ノードで自動的に起動するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。



outgoing-message-handler

使用場所: acceptor-configinitiator-config

説明

outgoing-message-handlerは、クライアントからクラスタへの接続の切断を検出するために使用される構成情報を指定します。コネクションレスのプロトコルを使用する接続イニシエータおよび接続アクセプタでは、この情報は、切断された接続に割り当てられていたリソースを検出および解放するために必要です。この情報は、接続指向のイニシエータおよびアクセプタでも、接続の切断を検出するための追加メカニズムとして使用できます。

要素

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

表B-42 outgoing-message-handlerのサブ要素

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

<heartbeat-interval>

オプション

pingリクエストの間隔を指定します。pingリクエストは、接続の整合性を確保するために使用します。この要素の値は、次の形式で指定する必要があります。

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。値0はpingリクエストがないことを意味します。デフォルト値は0です。

<heartbeat-timeout>

オプション

pingリクエストへのレスポンスに対する最大待機時間を指定します。この時間を超過すると、基礎となる接続が使用不能と宣言されます。この要素の値は、次の形式で指定する必要があります。

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は、request-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(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は無限のタイムアウトです。



overflow-scheme

使用場所: caching-schemesdistributed-schemereplicated-schemeoptimistic-schemeread-write-backing-map-schemeversioned-backing-map-scheme

説明

overflow-schemeは、高速でサイズ制限のあるフロント層キャッシュと、低速でより大容量のバック層キャッシュで構成される2層キャッシュを定義します。サイズ制限のあるフロント層がいっぱいになると、削除されたエントリが透過的にバック層に移動されます。キャッシュ・ミス発生時は、エントリがバック層からフロント層に移動することがあります。一般的なデプロイでは、フロント層にはlocal-schemeが、バック層にはexternal-schemeが使用され、JVMヒープよりも容量の大きい高速のローカル・キャッシュが実現されます。このようなデプロイメントでは、local-scheme要素のhigh-unitsおよびeviction-policyによってフロント・キャッシュからバック・キャッシュへのエントリの転送(削除)が制御されます。


注意:

標準のキャッシュ記憶域におけるオーバーフローに依存することはお薦めしません。これは、構成された容量を記憶域所要量が一時的に超えた場合に、削除処理に付随するデータの損失を回避する目的でのみ使用してください。一般に、オーバーフローのオンディスク記憶域は空のままにします。

実装

com.tangosol.net.cache.OverflowMapまたはcom.tangosol.net.cache.SimpleOverflowMapのいずれかで実装されます。詳細は、expiry-enabledを参照してください。

エントリの有効期限

オーバーフローでは、<expiry-delay>サブ要素の構成に従って、値の有効期間に基づいたエントリの自動失効がサポートされます。

要素

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

表B-43 overflow-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<class-name>

オプション

オーバーフロー・キャッシュのカスタム実装を指定します。カスタム実装は、com.tangosol.net.cache.OverflowMapまたはcom.tangosol.net.cache.SimpleOverflowMapクラスを拡張し、完全に同一のpublicなコンストラクタを宣言する必要があります。

<init-params>

オプション

初期化パラメータを指定します。これは、com.tangosol.run.xml.XmlConfigurableインタフェースを実装するオーバーフロー・キャッシュのカスタム実装で使用されます。

<front-scheme>

必須

フロント層キャッシュの作成に使用するcache-schemeを指定します。有効な値は次のとおりです。

front-schemeのエビクション・ポリシーによって、フロント層およびバック層に格納するエントリとアイテムが定義されます。例:

<front-scheme>
  <local-scheme>
    <eviction-policy>HYBRID</eviction-policy>
    <high-units>1000</high-units>
  </local-scheme>
</front-scheme>

<back-scheme>

必須

バック層キャッシュの作成に使用するcache-schemeを指定します。有効な値は次のとおりです。

例:

<back-scheme>
  <external-scheme>
    <lh-file-manager/>
  </external-scheme>
</back-scheme>

<miss-cache-scheme>

オプション

キャッシュ・ミス情報を保持するcache-schemeを指定します。expiry-enabled(<expiry-enabled>サブ要素を参照)が指定されていないキャッシュでは、miss-cacheを使用して、フロント層およびバック層の両方で、キャッシュ・ミスの発生したキーが追跡されます。いずれの層にもキーが存在しないという情報により、速度が遅くなるバック層への問合せを回避できるため、一部の操作では実行速度が向上します。サイズが制限されたスキームを使用すると、追跡するミスの数を制御できます。値を指定しないと、キャッシュ・ミスのデータは保持されません。有効な値は次のとおりです。

<expiry-enabled>

オプション

com.tangosol.net.cache.CacheMap APIの規定に従って、自動失効データのサポートを有効にします。有効化すると、overflow-schemeの実装に、com.tangosol.net.cache.SimpleOverflowMapではなくcom.tangosol.net.cache.OverflowMapが使用されます。有効な値はtrueまたはfalseです。デフォルト値はfalseです。

<expiry-delay>

オプション

前回の更新からエントリが期限切れとなるまでの、キャッシュでエントリが保持される期間を指定します。期限切れになったキャッシュ内のエントリはクライアントからアクセス不能となり削除されます。

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

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、秒が単位として適用されます。値0は期限がないことを意味します。デフォルト値は0です。

注意: expiry-delayのパラメータ (cExpiryMillis)は整数として定義し、ミリ秒単位で表します。そのため、最大期間はInteger.MAX_VALUE(2147483647)ミリ秒数を超えることはできず、おおよそ24日間になります。

<listener>

オプション

キャッシュ上で発生しているイベントの通知を受け取るcom.tangosol.util.MapListenerの実装を指定します。



paged-external-scheme

使用場所: caching-schemesdistributed-schemereplicated-schemeoptimistic-schemenear-schemeversioned-near-schemeoverflow-schemeread-write-backing-map-schemeversioned-backing-map-scheme

説明

external-scheme同様、paged-external-schemesは、より大きな記憶域容量の使用を可能にする非JVMヒープ・ベースのキャッシュを定義します。paged-external-schemeでは、ページングを使用してLRUエビクションを最適化します(<paging>サブ要素を参照)。ページ・キャッシュ機能の詳細は、第14章「シリアライズ・ページ・キャッシュ」を参照してください。

実装

このスキームは、com.tangosol.net.cache.SerializationPagedCacheクラスによって実装されます。

ページング

キャッシュ・エントリは一連のページによって保持されます。各ページは個別のcom.tangosol.io.BinaryStoreであり、構成済のストレージ・マネージャから取得されます(「プラッガブルなストレージ・マネージャ」を参照)。ページは作成時点において現在のページと見なされ、すべての書込み操作がこのページに対して実行されます。構成可能な時間間隔(<page-duration>サブ要素を参照)で現在のページが閉じられ、新しい現在のページが作成されます。特定のキーの読取り操作は、対象キーが格納された最後のページに対して実行されます。ページ数が構成済の最大値(<page-limit>サブ要素を参照)を超過すると、最も古いページが破棄され、そのページが閉じられてから更新されていないアイテムは削除されます。たとえば、1ページ当たり10分の間隔でキャッシュを構成し、最大値を6ページとすると、最大で1時間分のエントリがキャッシュされることになります。ページングでは、キャッシュ・エントリの削除や消去が行われているため、ストレージ・マネージャに対する削除操作を個別に実行する必要がなくなり、パフォーマンスが向上します。キャッシュでは、削除されたエントリに対する参照を解放するだけです。すべてのページ・エントリに使用されていた記憶域の解放はページ全体の最終的な破棄に依存し、これは1回のキーボード操作で実行されます。

プラッガブルなストレージ・マネージャ

外部スキームはプラッガブルなストア・マネージャを使用して、ページの作成と破棄、およびこれらのページ内のエントリへのアクセスを実行します。サポートされるストア・マネージャは次のとおりです。

永続性(長期記憶域)

外部ページ・キャッシュは、大きなデータ・セットの一時記憶域(たとえば、overflow-schemeのバック層)として使用されます。これらのキャッシュは長期記憶域(永続)としては使用できず、JVMの存続期間を超えて保持することはできません。クラスタ化の永続性は、distributed-schemeread-write-backing-map-schemeを使用して構成します。非クラスタの永続キャッシュが必要な場合は、「永続性(長期記憶域)」を参照してください。

要素

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

表B-44 paged-external-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<class-name>

オプション

外部ページ・キャッシュのカスタム実装を指定します。カスタム実装では、com.tangosol.net.cache.SerializationPagedCacheクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<init-params>

オプション

初期化パラメータを指定します。これは、com.tangosol.run.xml.XmlConfigurableインタフェースを実装する外部ページ・キャッシュのカスタム実装で使用されます。

<listener>

オプション

キャッシュ上で発生しているイベントの通知を受け取るcom.tangosol.util.MapListenerの実装を指定します。

<page-limit>

必須

ページ・キャッシュの最大アクティブ・ページ数を指定します。有効な値は、2 - 3600の間の正の整数です。

<page-duration>

オプション

ページ・キャッシュ内のページを現在のページとする期間を秒単位で指定します。この要素の値は、次の形式で指定する必要があります。

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、秒が単位として適用されます。有効な値は、5から604800秒(1週間)および0(失効なし)です。デフォルト値は0です。

<async-store-manager>

オプション

他のストレージ・マネージャに対して非同期のストレージ・マネージャ・ラッパーを使用するよう外部ページ・キャッシュを構成します。詳細は、「プラッガブルなストレージ・マネージャ」を参照してください。

<custom-store-manager>

オプション

ストレージ・マネージャのカスタム実装を使用するよう外部ページ・キャッシュを構成します。

<bdb-store-manager>

オプション

キャッシュ記憶域にBerkeley Database JEのオンディスク・データベースを使用するよう外部ページ・キャッシュを構成します。

<lh-file-manager>

オプション

キャッシュ記憶域にCoherence LHのオンディスク・データベースを使用するよう外部ページ・キャッシュを構成します。

<nio-file-manager>

オプション

キャッシュ記憶域にメモリーマップ・ファイルを使用するよう外部ページ・キャッシュを構成します。

<nio-memory-manager>

オプション

キャッシュ記憶域にJVMヒープ外のメモリー領域を使用するよう外部ページ・キャッシュを構成します。



partition-listener

使用場所: distributed-scheme

説明

com.tangosol.net.partition.PartitionListenerインタフェースの実装を指定します。これにより、パーティション分散イベントの受信が可能になります。

要素

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

表B-45 partition-listenerのサブ要素

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

<class-name>

必須

PartitionListenerインタフェースを実装するクラスの名前。この実装には、パラメータがゼロのpublicなコンストラクタが必要です。デフォルト値は、tangosol-coherence.xmlディスクリプタのpartition-listener/class-nameパラメータに指定された値です。詳細は、「DistributedCacheサービスのパラメータ」を参照してください。



partitioned

使用場所: backing-map-scheme(distributed-scheme内でのみ)

説明

partitioned要素は、含まれるバッキング・マップがPartitionAwareBackingMapかどうかを指定します(この要素は、distributed-schemeの子であるbacking-map-schemeでのみ考慮されます)。trueに設定した場合、backing-map-scheme要素に含まれている特定のスキームは、PartitionAwareBackingMapの個々のパーティションのバッキング・マップの構成に使用されます。それ以外の場合は、バッキング・マップ全体に対して使用されます。PartitionAwareBackingMapインタフェースの具体的な実装は次のとおりです。

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


partitioned-quorum-policy-scheme

使用場所: distributed-scheme

説明

partitioned-quorum-policy-scheme要素には、パーティション・キャッシュ・サービス用のクォーラム・ポリシー設定を記述します。

要素

表B-46は、partitioned-quorum-policy-scheme要素で定義可能なサブ要素について説明しています。

表B-46 partitioned-quorum-policy-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<distribution-quorum>

オプション

パーティション分散を行うために必要な、パーティション・サービスの所有権が有効なメンバーの最小数を指定します。

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

<restore-quorum>

オプション

失われたプライマリ・パーティションをバックアップからリストアするために必要な、パーティション・サービスの所有権が有効なメンバーの最小数を指定します。

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

<read-quorum>

オプション

読取りリクエストを処理するために必要な、キャッシュ・サービスの記憶域メンバーの最小数を指定します。読取りリクエストとは、キャッシュの状態や内容を変化させないリクエストです。

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

<write-quorum>

オプション

書込みリクエストを処理するために必要な、キャッシュ・サービスの記憶域メンバーの最小数を指定します。書込みリクエストとは、キャッシュの状態や内容を変化させる可能性のあるリクエストです。

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

<class-name>

オプション

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

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

<class-factory-name>

オプション

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

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



provider

使用場所: sslidentity-managertrust-manager

説明

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

要素

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

表B-47 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>要素と一緒に使用することはできません。



proxy-config

使用場所: proxy-scheme

説明

proxy-config要素は、プロキシ・サービスによって管理されるクラスタ・サービス・プロキシの構成情報を指定します。サービス・プロキシは、リモート・クライアント(接続アクセプタを使用してクラスタに接続)と、リモート・クライアントが使用するクラスタ・サービスとの間を媒介します。

要素

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

表B-48 proxy-configのサブ要素

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

<cache-service-proxy>

オプション

プロキシ・サービスによって管理されるキャッシュ・サービス・プロキシの構成情報を指定します。

<invocation-service-proxy>

オプション

プロキシ・サービスによって管理される起動サービス・プロキシの構成情報を指定します。



proxy-scheme

使用場所: caching-schemes

説明

proxy-scheme要素には、クラスタ・サービスの構成情報を記述します。これにより、Coherence*Extendクライアントは、クラスタへの接続が可能になり、クラスタに参加しなくてもクラスタ・サービスを使用できるようになります。

要素

表B-49は、proxy-scheme要素で定義可能なサブ要素について説明しています。

表B-49 proxy-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<service-name>

オプション

サービスの名前を指定します。

<task-hung-threshold>

オプション

タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。注意: ポストされたタスクがまだ開始されていない場合は、ハングと見なされません。この属性は、スレッド・プールが使用されている(thread-countの値が正の)場合にのみ適用されます。有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された値です。詳細は、「ProxyServiceのパラメータ」のtask-hung-thresholdパラメータを参照してください。

<task-timeout>

オプション

サービス・ワーカー・スレッド上で実行するリクエストのタイムアウト値をミリ秒単位で指定します。この属性は、スレッド・プールが使用されている(thread-countの値が正の)場合にのみ適用されます。ゼロを指定すると、service-guardianのデフォルトの<timeout-milliseconds>値が使用されます。有効な値は、負でない整数です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された値です。「ProxyServiceのパラメータ」のtask-timeoutパラメータを参照してください。

<request-timeout>

オプション

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

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

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

  • タスクの実行時間

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

有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された値です。詳細は、「DistributedCacheサービスのパラメータ」のrequest-timeoutパラメータを参照してください。

<thread-count>

オプション

サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。有効な値は、正の整数またはゼロです。デフォルト値は、tangosol-coherence.xmlディスクリプタのthread-countパラメータに指定された値です。詳細は、「ProxyServiceのパラメータ」を参照してください。

<acceptor-config>

必須

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

<proxy-config>

オプション

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

<autostart>

オプション

autostart要素は、キャッシュ・サーバー(つまり、com.tangosol.net.DefaultCacheServer)で使用することを目的としています。この要素は、このサービスをクラスタ・ノードで自動的に起動するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。

<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(日数)

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

<service-failure-policy>

オプション

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

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

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

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

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

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

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

<member-listener>

オプション

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

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

<proxy-quorum-policy-scheme>

オプション

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



proxy-quorum-policy-scheme

使用場所: proxy-scheme

説明

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

要素

表B-49は、proxy-quorum-policy-scheme要素で定義可能なサブ要素について説明しています。

表B-50 proxy-quorum-policy-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<connect-quorum>

オプション

クライアント接続を可能にするために必要な、プロキシ・サービスのメンバーの最小数を指定します。

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

<class-name>

オプション

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

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

<class-factory-name>

オプション

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

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



read-write-backing-map-scheme

使用場所: caching-schemesdistributed-scheme

説明

read-write-backing-map-schemeは、永続ストアのサイズ制限されたキャッシュを提供するバッキング・マップを定義します。詳細は、第13章「リードスルー、ライトスルー、ライトビハインドおよびリフレッシュアヘッド・キャッシュ」を参照してください。

実装

read-write-backing-map-schemeは、com.tangosol.net.cache.ReadWriteBackingMapクラスによって実装されます。

外部ストアのキャッシュ

読取り/書込みバッキング・マップは、外部の永続キャッシュ・ストア(<cachestore-scheme>サブ要素を参照)によってバッキングされるキャッシュを保持します。キャッシュ・ミスでは、バックエンド・ストアまでリードスルーしてデータが取得されます。書込み可能なストアが提供されている場合は、キャッシュへの書込みがキャッシュ・ストアにも同様に伝播します。

リフレッシュアヘッド・キャッシング

これが有効な場合(<refreshahead-factor>サブ要素を参照)、失効時期が近い、最近アクセスされたエントリがキャッシュによって監視され、キャッシュ・ストアから非同期でリロードされます。アイテムは定期的に期限切れになるため、アプリケーションでキャッシュ・ストアの読取りが遅くなる事態を回避できます。

ライトビハインド・キャッシュ

これが有効な場合(<write-delay>サブ要素を参照)、キャッシュによるバックエンド・キャッシュ・ストアへの書込みが遅延されます。これにより、書込みをより効率的な更新ブロックにバッチ化できます(<write-batch-factor>サブ要素を参照)。これは、クライアント・スレッドとは非同期に実行されます。

要素

表B-51は、read-write-backing-map-scheme要素で定義可能なサブ要素について説明しています。

表B-51 read-write-backing-map-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<class-name>

オプション

読取り/書込みバッキング・マップのカスタム実装を指定します。カスタム実装では、com.tangosol.net.cache.ReadWriteBackingMapクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<init-params>

オプション

初期化パラメータを指定します。これは、com.tangosol.run.xml.XmlConfigurableインタフェースを実装する読取り/書込みバッキング・マップのカスタム実装で使用されます。

<listener>

オプション

キャッシュ上で発生しているイベントの通知を受け取るcom.tangosol.util.MapListenerの実装を指定します。

<cachestore-scheme>

オプション

キャッシュするストアを指定します。指定しない場合、キャッシュ・データは内部キャッシュにのみ配置され(<internal-cache-scheme>サブ要素を参照)、そのキャッシュに対して実行された操作のみを反映します。

<cachestore-timeout>

オプション

CacheStoreの読取りおよび書込み操作に使用するタイムアウト時間を指定します。CacheStoreの操作がタイムアウトになると、実行スレッドが中断されて、最終的にキャッシュ・サービスが終了することがあります。非同期のCacheStore操作(ライトビハインド、リフレッシュアヘッドなど)のタイムアウトでは、サービスは終了しません。この要素の値は、次の形式で指定する必要があります。

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。0を指定すると、デフォルトのservice-guardian<timeout-milliseconds>値が使用されます。指定がない場合のデフォルト値は0です。

<internal-cache-scheme>

必須

エントリのキャッシュに使用されるcache-schemeを指定します。有効な値は次のとおりです。

<miss-cache-scheme>

オプション

キャッシュ・ミス情報を保持するcache-schemeを指定します。miss-cacheは、キャッシュ・ストアに見つからなかったキーの追跡に使用されます。キャッシュ・ストアにキーがないことを事前に知っておくことで、一部の操作がより迅速に実行されます。処理に時間がかかる可能性のあるキャッシュ・ストアへの問合せを回避できるからです。サイズが制限されたスキームを使用すると、キャッシュされるキャッシュ・ミスの数を制御できます。値を指定しないと、キャッシュ・ミスのデータは保持されません。有効な値は次のとおりです。

<read-only>

オプション

読取り専用にするかどうかを指定します。trueの場合、キャッシュはデータをキャッシュ・ストアからロードして読取り操作を行い、キャッシュが更新されたときにキャッシュ・ストアへの書込みは実行しません。有効な値は、trueまたはfalseです。デフォルト値はfalseです。

<write-delay>

オプション

ライトビハインド・キューでキャッシュ・ストアに対する非同期の書込みが遅延される時間間隔を指定します。この要素の値は、次の形式で指定する必要があります。

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、秒が単位として適用されます。0の場合、キャッシュ・ストアへの同期書込み(キューイングなし)が行われます。それ以外の場合、キャッシュ内の値が最後に更新されてから指定された期間だけ遅延して、書込みが非同期で実行されます。デフォルトは0です。

<write-batch-factor>

オプション

write-batch-factor要素は、ライトビハインド・キュー・エントリのソフト熟成時間の計算に使用されます。キューのエントリは、ライトビハインド・キューにwrite-delay期間以上格納されると、書込み操作用に十分に熟成している(適切な書込み時である)と見なされます。ソフト熟成時間は、実際の熟成時間より前の時点になります。これより後では、エントリが(その他のすべての熟成エントリとソフト熟成エントリとともに)CashStoreに対するバッチ化された非同期の書込み操作に組み込まれます。つまり、ソフト熟成エントリは、次の期間よりも長くライトビハインド・キューに配置されていたエントリです。

D' = (1.0 - F)*D。D = write-delayの間隔、F = write-batch-factor

概念的には、バッチ化された更新を実行する際に、write-behindスレッドでは次のロジックが使用されます。

  1. スレッドは、キューに入れられたエントリが熟成するのを待ちます。

  2. エントリが熟成すると、キュー内の熟成エントリおよびソフト熟成エントリのすべてが、スレッドでデキューされます。

  3. 次に、スレッドではstore()(熟成エントリが1つのみの場合)またはstoreAll()(熟成/ソフト熟成エントリが複数存在する場合)を使用して、熟成およびソフト熟成のすべてのエントリを書き込みます。

  4. その後、スレッドは(1)を繰り返します。

この要素は、非同期の書込みが有効で(つまり、write-delay要素の値が0より大きくて)、CacheStorestoreAll()メソッドが実装されている場合にのみ適用されます。要素の値は、write-delay間隔の割合で表します。有効な値は、1.0以下の正のダブルになります。デフォルトは0です。

<write-requeue-threshold>

オプション

追加のアクションを実行できるライトビハインド・キューのサイズを指定します。この値は、対応するログ・メッセージの頻度を制御します。たとえば、この値が100の場合、ライトビハインド・キューのサイズが100の倍数になるたびにログ・メッセージが生成されます。ゼロの場合、ライトビハインドの再キューは無効になります。有効な値は、正の整数またはゼロです。デフォルトは0です。

<refresh-ahead-factor>

オプション

refresh-ahead-factor要素は、キャッシュ・エントリのソフト失効時間の計算に使用されます。ソフト失効時間は、実際の失効時間より前の時点になります。これより後では、エントリへのアクセス・リクエストによって、エントリに対する非同期のロード・リクエストがスケジュール化されます。この属性は、内部キャッシュがlocal-schemeで、<expiry-delay>サブ要素が構成されている場合にのみ適用されます。この値は、内部的なLocalCache失効間隔の割合で表します。0の場合、リフレッシュアヘッド・スケジュールが無効になります。1.0の場合、get操作によって非同期のリロードがただちにトリガーされます。有効な値は、1.0以下の正のダブルになります。デフォルト値は0です。

<rollback-cachestore-failures>

オプション

同期のキャッシュ・ストア操作でキャッチされた例外が、コール元のスレッドに再スローされるかどうかを指定します(ネットワークを介してリモート・メンバーに送信されることもあります)。この要素の値がfalseの場合、同期のキャッシュ・ストア操作でキャッチされた例外はローカルでログに記録され、内部キャッシュは更新されます。この値がtrueの場合、例外がコール元のスレッドに再スローされ、内部キャッシュは変更されません。この操作をトランザクション・コンテキスト内でコールした場合は、現在のトランザクションをロールバックするのと同様の操作になります。有効な値は、trueまたはfalseです。デフォルト値はfalseです。



remote-addresses

使用場所: tcp-initiator

説明

remote-addresses要素には、1つ以上のTCP/IPアクセプタのアドレス(IPまたはDNS名)とポートを記述します。TCP/IPイニシエータは、この情報を使用してリモート・クラスタのプロキシ・サービスとの接続を確立します。TCP/IPアクセプタは、proxy-scheme要素内で構成されます。TCP/IPイニシエータは、記載されたアドレスをすべて試すか、またはTCP/IP接続が確立されるまで、アドレスへの接続をランダムに試行します。詳細および構成例については、『Oracle Coherenceクライアント・ガイド』を参照してください。

次の構成例は、イニシエータに対して192.168.0.2:9099および192.168.0.3:9099にランダムに接続するよう指示します。

<remote-addresses>
  <socket-address>
    <address>192.168.0.2</address>
    <port>9099</port>
  </socket-address>
  <socket-address>
    <address>192.168.0.3</address>
    <port>9099</port>
  </socket-address>
</remote-addresses>

要素

表B-54は、remote-addresses要素で定義可能なサブ要素について説明しています。

表B-52 remote-addressesのサブ要素

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

<socket-address>

オプション

TCP/IPアクセプタがリスニングを行うアドレス(IPまたはDNS名)およびポートを指定します。複数の<socket-address>要素を<remote-addresses>要素内で使用できます。

<address-provider>

オプション

TCP/IPアクセプタがリスニングを行うアドレス(IPまたはDNS名)およびポートを指定するcom.tangosol.net.AddressProvider実装の構成を記述します。

<remote-addresses>要素には、<socket-address>要素または<address-provider>要素のいずれかを含めることができますが、両方を含めることはできません。



remote-cache-scheme

使用場所: cachestore-schemecaching-schemesnear-scheme

説明

remote-cache-scheme要素には、クラスタの外部からCoherence*Extendを使用してクラスタ・キャッシュを利用する際に必要な構成情報を記述します。

要素

表B-53は、remote-cache-scheme要素で定義可能なサブ要素について説明しています。

表B-53 remote-cache-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<service-name>

オプション

このスキームで作成されたキャッシュを管理するサービス名を指定します。

<operation-bundling>

オプション

バンドル方針の構成情報を指定します。

<initiator-config>

必須

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



remote-invocation-scheme

使用場所: caching-schemes

説明

remote-invocation-scheme要素には、最初にクラスタに参加せずにクラスタ・コンテキスト内でタスクを実行する際に必要な構成情報を記述します。このスキームは、Coherence*Extendを使用してクラスタに接続します。

要素

表B-54は、remote-invocation-scheme要素で定義可能なサブ要素について説明しています。

表B-54 remote-invocation-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<service-name>

オプション

サービスの名前を指定します。

<initiator-config>

必須

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



replicated-scheme

使用場所: caching-schemesnear-schemeversioned-near-schemeoverflow-schemeversioned-backing-map-scheme

説明

レプリケーション・スキームは、指定したサービスを実行する各クラスタ・ノードに、すべてのキャッシュ・エントリを完全にレプリケートするキャッシュを定義します。レプリケーション・キャッシュの詳細は、「レプリケーション・キャッシュ」を参照してください。

クラスタ化された並列処理制御

レプリケーション・キャッシュでは、クラスタ全体を対象とするキーベースのロック機能がサポートされるため、更新の欠落といった従来の問題を発生させることなく、クラスタ内のデータを変更できます。明示的ロックを行わずに実行された操作もすべてアトミックですが、キャッシュに格納された値がアトミック操作間で変更されない保証はありません。

キャッシュ記憶域(バッキング・マップ)

キャッシュの記憶域はbacking-map-schemeを使用して指定します(<backing-map>サブ要素を参照)。たとえば、バッキング・マップにlocal-schemeを使用するレプリケーション・キャッシュでは、キャッシュ・エントリがメモリー内に格納されます。

要素

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

表B-55 replicated-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<service-name>

オプション

このスキームで作成されたキャッシュを管理するサービス名を指定します。サービスは、tangosol-coherence.xmlファイルの<services>要素で構成します。詳細は、付録A「オペレーション構成の要素」を参照してください。

<serializer>

オプション

ユーザー定義型のシリアライズおよびデシリアライズに使用するcom.tangosol.io.Serializer実装のクラス構成情報を指定するか、またはオペレーション構成ファイルで定義されているシリアライザ・クラス構成を参照します(「serializers」を参照)。

<listener>

オプション

キャッシュ上で発生しているイベントの通知を受け取るcom.tangosol.util.MapListenerの実装を指定します。

<backing-map-scheme>

オプション

キャッシュ・サーバー内でのエントリの格納に使用するキャッシュのタイプを指定します。有効な値は次のとおりです。

キャッシュの一貫性を確保するため、レプリケーション・キャッシュのバッキング・マップでは、キャッシュ・エントリのロードにリードスルー・パターンを使用しません。キャッシュ・サービスの外部でキャッシュアサイド・パターンを使用するか、クラスタ・キャッシュのリードスルーをサポートするdistributed-schemeに切り替えます。

<standard-lease-milliseconds>

オプション

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

<lease-granularity>

オプション

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

  • thread

  • member

値がthreadの場合、ロックはそのロックを取得したスレッドによって保持され、そのスレッドによってのみ解放されます。値がmemberの場合、ロックはクラスタ・ノードによって保持され、ロックを取得したクラスタ・ノード上で実行されるスレッドによって解放できます。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたlease-granularity値です。詳細は、「ReplicatedCacheサービスのパラメータ」を参照してください。

<mobile-issues>

オプション

リースの問題を最新のロック・ホルダーに転送するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたmobile-issue値です。詳細は、「ReplicatedCacheサービスのパラメータ」を参照してください。

<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(日数)

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

<service-failure-policy>

オプション

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

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

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

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

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

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

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

<member-listener>

オプション

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

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

<autostart>

オプション

autostart要素は、キャッシュ・サーバー(つまり、com.tangosol.net.DefaultCacheServer)で使用することを目的としています。この要素は、このキャッシュ・スキームに関連付けられたキャッシュ・サービスをクラスタ・ノードで自動的に起動するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。



serializer

使用場所: acceptor-configdefaultsdistributed-schemeinitiator-configinvocation-schemeoptimistic-schemereplicated-schemetransactional-scheme

説明

serializer要素には、com.tangosol.io.Serializer実装のクラス構成情報を記述します。

serializer要素は、リテラル構成またはフル構成のいずれかを受け入れます。推奨する方法は、オペレーション構成ファイルで定義されているフル構成を参照する方法です。デフォルトで、オペレーション構成ファイルには、Java用(デフォルト)とPOF用の2つのシリアライザ・クラス定義が含まれています。「serializers」を参照してください。

次の例では、オペレーション構成ファイル内のPOFシリアライザ定義を参照しています。

...
<serializer>pof</serializer>
...

次の例は、フル・シリアライザ・クラス構成を示します。

...
<serializer>
   <instance>
      <class-name>com.tangosol.io.pof.ConfigurablePofContext</class-name>
      <init-params>
         <init-param>
            <param-type>String</param-type>
            <param-value>my-pof-config.xml</param-value>
         </init-param>
      </init-params>
   </instance>
</serializer>
...

要素

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

表B-56 serializerのサブ要素

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

<instance>

オプション

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



socket-address

使用場所: remote-addresses

説明

socket-address要素は、TCP/IPアクセプタがリスニングを行うアドレスとポートを指定します。

要素

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

表B-57 socket-addressのサブ要素

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

<address>

必須

TCP/IPアクセプタ・ソケットがリスニングを行うIPアドレス(IPまたはDNS名)を指定します。

<port>

必須

TCP/IPアクセプタ・ソケットがリスニングを行うポートを指定します。有効な値は1から65535です。



socket-provider

使用場所: tcp-acceptortcp-initiatordefaults

説明

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

<socket-provider>要素は、リテラル構成またはフル構成のいずれかを受け入れます。推奨する方法は、オペレーション構成ファイルで定義されている構成を参照する方法です。「socket-providers」を参照してください。

出荷状態で、オペレーション構成ファイルには、system(デフォルト)とsslの2つのソケット・プロバイダ構成が含まれています。必要に応じて、オペレーション・オーバーライド・ファイルで追加のソケット・プロバイダを定義できます。ソケット・プロバイダ構成は、id属性名を使用して参照されます。次の例は、事前定義のSSLソケット・プロバイダ構成を参照します。

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

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

要素

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

表B-58 socket-providerのサブ要素

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

<system>

オプション

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

<ssl>

オプション

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

<instance>

オプション

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



ssl

使用場所: socket-provider

説明

<ssl>要素には、SSLを使用するソケットおよびチャンネル実装を作成するソケット・プロバイダの構成情報を記述します。

要素

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

表B-59 sslのサブ要素

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

<protocol>

オプション

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

<provider>

オプション

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

<executor>

オプション

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

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

<identity-manager>

オプション

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

<trust-manager>

オプション

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

<hostname-verifier>

オプション

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

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



tcp-acceptor

使用場所: acceptor-config

説明

tcp-acceptor要素は、Coherence*ExtendクライアントからのTCP/IPを介した接続を受け入れる接続アクセプタの構成情報を指定します。詳細および構成例については、『Oracle Coherenceクライアント・ガイド』を参照してください。

要素

表B-60は、tcp-acceptor要素で定義可能なサブ要素について説明しています。

表B-60 tcp-acceptorのサブ要素

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

<local-address>

オプション

TCP/IPサーバー・ソケット(接続アクセプタによって開かれる)がバインドされるローカル・アドレス(IPまたはDNS名)およびポートを指定します。

<address-provider>

オプション

TCP/IPサーバー・ソケット(接続アクセプタによって開かれる)がリスニングを行うローカル・アドレス(IPまたはDNS名)およびポートを指定するcom.tangosol.net.AddressProvider実装の構成を記述します。

<tcp-acceptor>要素には、<local-address>要素または<address-provider>要素のいずれかを含めることができますが、両方を含めることはできません。

<socket-provider>

オプション

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

<reuse-address>

オプション

TCP/IPソケットを、現在使用しているアドレスまたは最近使用したアドレスにバインドできるかどうかを指定します。

OSの実装によっては結果の動作が大きく異なるため、この設定を使用することはお薦めしません。JVMでは一般に、対象のOSに対して安全とされる適切なデフォルト設定が選択されます。

有効な値は、truefalseです。デフォルト値はOSによって異なります。

<keep-alive-enabled>

オプション

キープ・アライブ(SO_KEEPALIVE)が、TCP/IPソケットで有効にされているかどうかを示します。有効な値は、truefalseです。デフォルトでは、キープ・アライブは有効です。

<tcp-delay-enabled>

オプション

TCP遅延(Nagleアルゴリズム)が、TCP/IPソケットで有効にされているかどうかを示します。有効な値は、truefalseです。デフォルトでは、TCP遅延は無効です。

<receive-buffer-size>

オプション

基礎となるTCP/IPソケット・ネットワーク受信バッファのサイズを構成します。受信バッファ・サイズを増やすと、大量の接続におけるネットワークI/Oのパフォーマンスが向上します。受信バッファ・サイズを減らすと、未処理の受信データが削減されます。この要素の値は、次の形式で指定する必要があります。

[\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、210)

  • Mまたはm(メガ、220)

  • Gまたはg(ギガ、230)

値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値はOSに依存します。

<send-buffer-size>

オプション

基礎となるTCP/IPソケット・ネットワーク送信バッファのサイズを構成します。この要素の値は、次の形式で指定する必要があります。

[\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、210)

  • Mまたはm(メガ、220)

  • Gまたはg(ギガ、230)

値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値はOSに依存します。

<listen-backlog>

オプション

TCP/IPサーバー・ソケットの未処理キューのサイズを構成します。有効値は正の整数です。デフォルト値はOSに依存します。

<linger-timeout>

オプション

TCP/IPソケットで、指定したリンガー時間SO_LINGERを有効にします。この要素の値は、次の形式で指定する必要があります。

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルトでは、リンガーは無効です。

<authorized-hosts>

オプション

このTCP/IPアクセプタへの接続が許可される、TCP/IPイニシエータ・ホストのIPアドレス・コレクションです。

<suspect-protocol-enabled>

オプション

不正なCoherence*Extendクライアント接続を検出して閉じるため、疑いのあるプロトコルを有効にするかどうかを指定します。疑いのあるプロトコルはデフォルトで有効です。

有効な値は、truefalseです。

<suspect-buffer-size>

オプション

対応するクライアント接続が疑いありとマークされるまでの送信接続バックログ(バイト単位)を指定します。疑いのあるクライアント接続は、疑いがなくなるまで、またはメモリー不足からプロキシ・サーバーを保護するためにその接続が閉じられるまで監視されます。

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

[\d]+[[.][\d]+]?[K|k|M|m|G|g|T|t]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、2^10)

  • Mまたはm(メガ、2^20)

  • Gまたはg(ギガ、2^30)

  • Tまたはt(テラ、2^40)

値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値は10000000です。

<suspect-buffer-length>

オプション

対応するクライアント接続が疑いありとマークされるまでの送信接続バックログ(メッセージ単位)を指定します。疑いのあるクライアント接続は、疑いがなくなるまで、またはメモリー不足からプロキシ・サーバーを保護するためにその接続が閉じられるまで監視されます。

デフォルト値は10000です。

<nominal-buffer-size>

オプション

その時点で疑いのあるクライアント接続の疑いが晴れたと見なされる送信接続バックログ(バイト単位)を指定します。

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

[\d]+[[.][\d]+]?[K|k|M|m|G|g|T|t]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、2^10)

  • Mまたはm(メガ、2^20)

  • Gまたはg(ギガ、2^30)

  • Tまたはt(テラ、2^40)

値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値は2000000です。

<nominal-buffer-length>

オプション

その時点で疑いのあるクライアント接続の疑いが晴れたと見なされる送信接続バックログ(メッセージ単位)を指定します。

デフォルト値は2000です。

<limit-buffer-size>

オプション

メモリ不足からプロキシ・サーバーを保護するため、その時点で対応するクライアント接続を閉じる必要のある送信接続バックログ(バイト単位)を指定します。

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

[\d]+[[.][\d]+]?[K|k|M|m|G|g|T|t]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、2^10)

  • Mまたはm(メガ、2^20)

  • Gまたはg(ギガ、2^30)

  • Tまたはt(テラ、2^40)

値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値は100000000です。

<limit-buffer-length>

オプション

メモリ不足からプロキシ・サーバーを保護するため、その時点で対応するクライアント接続を閉じる必要のある送信接続バックログ(メッセージ単位)を指定します。

デフォルト値は60000です。



tcp-initiator

使用場所: initiator-config

説明

tcp-initiator要素は、Coherence*Extendクライアントからリモート・クラスタへのTCP/IPを介した接続を有効にする接続イニシエータの構成情報を指定します。詳細および構成例については、『Oracle Coherenceクライアント・ガイド』を参照してください。

要素

表B-61は、tcp-initiator要素で定義可能なサブ要素について説明しています。

表B-61 tcp-initiatorのサブ要素

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

<local-address>

オプション

TCP/IPクライアント・ソケット(TCP/IPイニシエータによって開かれる)がバインドされるローカル・アドレス(IPまたはDNS名)およびポートを指定します。

<remote-addresses>

必須

1つ以上のTCP/IP接続アクセプタのアドレスを記述します。TCP/IP接続イニシエータは、この情報を使用してリモート・クラスタとのTCP/IP接続を確立します。

<socket-provider>

オプション

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

<reuse-address>

オプション

TCP/IPソケットを、現在使用しているアドレスまたは最近使用したアドレスにバインドできるかどうかを指定します。

OSの実装によっては結果の動作が大きく異なるため、この設定を使用することはお薦めしません。JVMでは一般に、対象のOSに対して安全とされる適切なデフォルト設定が選択されます。

有効な値は、truefalseです。デフォルト値はOSによって異なります。

<keep-alive-enabled>

オプション

キープ・アライブ(SO_KEEPALIVE)が、TCP/IPソケットで有効にされているかどうかを示します。有効な値は、truefalseです。デフォルトでは、キープ・アライブは有効です。

<tcp-delay-enabled>

オプション

TCP遅延(Nagleアルゴリズム)が、TCP/IPソケットで有効にされているかどうかを示します。有効な値は、truefalseです。デフォルトでは、TCP遅延は無効です。

<receive-buffer-size>

オプション

基礎となるTCP/IPソケット・ネットワーク受信バッファのサイズを構成します。受信バッファ・サイズを増やすと、大量の接続におけるネットワークI/Oのパフォーマンスが向上します。受信バッファ・サイズを減らすと、未処理の受信データが削減されます。この要素の値は、次の形式で指定する必要があります。

[\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、210)

  • Mまたはm(メガ、220)

  • Gまたはg(ギガ、230)

値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値はOSに依存します。

<send-buffer-size>

オプション

基礎となるTCP/IPソケット・ネットワーク送信バッファのサイズを構成します。この要素の値は、次の形式で指定する必要があります。

[\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、210)

  • Mまたはm(メガ、220)

  • Gまたはg(ギガ、230)

値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値はOSに依存します。

<connect-timeout>

オプション

接続アクセプタへの接続を確立する際の最大待機時間を指定します。この要素の値は、次の形式で指定する必要があります。

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は無限のタイムアウトです。

<linger-timeout>

オプション

TCP/IPソケットで、指定したリンガー時間SO_LINGERを有効にします。この要素の値は、次の形式で指定する必要があります。

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルトでは、リンガーは無効です。



transactional-scheme

使用場所: caching-schemesversion-persistent-schemeversion-transient-scheme

説明

transactional-scheme要素は、トランザクションを保証する専用の分散キャッシュであるトランザクション・キャッシュを定義します。複数のtransactional-scheme要素を定義して様々な構成をサポートできます。アプリケーションは、次の3つのうちのいずれかの方法でトランザクション・キャッシュを使用します。

要素

表B-62は、transactional-scheme要素で定義可能なサブ要素について説明しています。

表B-62 transactional-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<service-name>

オプション

このスキームで作成されたキャッシュを管理するサービス名を指定します。サービス名が指定されていない場合のデフォルト・サービス名はTransactionalCacheです。

<serializer>

オプション

ユーザー定義型のシリアライズおよびデシリアライズに使用するcom.tangosol.io.Serializer実装のクラス構成情報を指定するか、またはオペレーション構成ファイルで定義されているシリアライザ・クラス構成を参照します(「serializers」を参照)。

<thread-count>

オプション

パーティション・キャッシュ・サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。有効な値は、正の整数またはゼロです。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたthread-count値です。詳細は、「DistributedCacheサービスのパラメータ」のthread-countパラメータを参照してください。

thread-count値を指定すると、トランザクション記憶域およびリカバリに使用されるトランザクション・フレームワークの内部トランザクション・キャッシュのデフォルト動作が変更されます。

<local-storage>

オプション

クラスタ・ノードをクラスタの記憶域として機能させる(つまり、パーティションを保持する)かどうかを指定します。無効化した場合、そのノードはキャッシュ・クライアントと見なされます。

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

有効な値は、trueまたはfalseです。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたlocal-storage値です。詳細は、「DistributedCacheサービスのパラメータ」のlocal-storageパラメータを参照してください。

<partition-count>

オプション

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

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

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

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

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

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

有効値は正の整数です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された値です。詳細は、「DistributedCacheサービスのパラメータ」のpartition-countパラメータを参照してください。

<high-units>

オプション

トランザクション記憶域のサイズを指定します。トランザクション記憶域のサイズに達すると、エビクション・ポリシーが適用され、記憶域から使用可能なエントリの25%が削除されます。

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

[\d]+[[.][\d]+]?[K|k|M|m|G|g|T|t]?[B|b]?

前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。

  • Kまたはk(キロ、2^10)

  • Mまたはm(メガ、2^20)

  • Gまたはg(ギガ、2^30)

  • Tまたはt(テラ、2^40)

値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値は10MBです。

<transfer-threshold>

オプション

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

<backup-count>

オプション

パーティション・キャッシュ・サービスのうち、各保存単位のバックアップ・データをキャッシュに保持するメンバーの数を指定します。この値が0になっていると、異常終了した場合にキャッシュ内のデータの一部が失われます。この値がNになっていると、即座に終了したクラスタ・ノードの数がN以内の場合、キャッシュ・データが保持されます。サイズMのパーティション・キャッシュを維持する場合、クラスタ内の合計メモリー使用量はクラスタ・ノードの数に依存するのではなく、M*(N+1)となります。推奨値は0または1です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたbackup-count値です。tangosol-coherence.xmlディスクリプタに指定されたbackup-countパラメータの値を参照してください。詳細は、「DistributedCacheサービスのパラメータ」を参照してください。

<task-hung-threshold>

オプション

タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。注意: ポストされたタスクがまだ開始されていない場合は、ハングと見なされません。この属性は、スレッド・プールが使用されている(thread-countの値が正の)場合にのみ適用されます。有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたtask-hung-threshold値です。詳細は、「DistributedCacheサービスのパラメータ」のtask-hung-thresholdパラメータを参照してください。

<task-timeout>

オプション

サービス・ワーカー・スレッド上で実行するリクエストのタイムアウト値をミリ秒単位で指定します。この属性は、スレッド・プールが使用されている(thread-countの値が正の)場合にのみ適用されます。ゼロを指定すると、service-guardianのデフォルトの<timeout-milliseconds>値が使用されます。有効な値は、負でない整数です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された値です。「DistributedCacheサービスのパラメータ」のtask-timeoutパラメータを参照してください。

<request-timeout>

オプション

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

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

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

  • タスクの実行時間

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

有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された値です。詳細は、「DistributedCacheサービスのパラメータ」のrequest-timeoutパラメータを参照してください。

<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(日数)

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

<service-failure-policy>

オプション

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

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

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

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

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

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

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

<partitioned-quorum-policy-scheme>

オプション

パーティション・キャッシュ・サービス用のクォーラム・ポリシー設定を指定します。

<autostart>

オプション

この要素は、キャッシュ・サーバー(つまり、com.tangosol.net.DefaultCacheServer)で使用することを目的としています。この要素は、このキャッシュ・スキームに関連付けられたキャッシュ・サービスをクラスタ・ノードで自動的に起動するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。



trust-manager

使用場所: ssl

説明

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

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

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

要素

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

表B-63 trust-managerのサブ要素

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

<algorithm>

オプション

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

<provider>

オプション

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

<key-store>

オプション

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



version-persistent-scheme

使用場所: versioned-backing-map-scheme

説明

version-persistent-schemeは、クラスタ・キャッシュのオブジェクトのバージョニング情報を格納するキャッシュを定義します。指定したスキームのバッキング・マップでサイズ制限を指定すると、追跡するバージョン識別子の数を制御できます。

要素

表B-64は、version-persistent-scheme要素で定義可能なサブ要素について説明しています。

表B-64 version-persistent-schemeのサブ要素

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

<cache-name-suffix>

オプション

名前修飾子を指定します。この修飾子は、特定のキャッシュに関連付けられたバージョン・オブジェクトのキャッシュの作成に使用されます。この要素の値は、ベース・キャッシュ名に付加されます。有効な値は文字列です。デフォルト値は-persistです。たとえば、Sessionsという名前のベース・ケースがあり、この名前修飾子が-persistに設定されている場合、関連付けられているバージョン・キャッシュの名前はSessions-persistになります。

<replicated-scheme>、<distributed-scheme>、または<transactional-scheme>

必須

バージョン情報の保持に使用されるキャッシュのスキームを指定します。有効な値は次のとおりです。



version-transient-scheme

使用場所: versioned-near-schemeversioned-backing-map-scheme

説明

version-transient-schemeは、バージョニングされたニア・キャッシュで使用される、オブジェクトのバージョニング情報を格納するキャッシュを定義します。指定したスキームのバッキング・マップでサイズ制限を指定すると、追跡するバージョン識別子の数を制御できます。

要素

次の表は、version-transient-scheme要素で定義可能なサブ要素について説明しています。

表B-65 version-transient-schemeのサブ要素

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

<cache-name-suffix>

オプション

名前修飾子を指定します。この修飾子は、特定のキャッシュに関連付けられたバージョン・オブジェクトのキャッシュの作成に使用されます。この要素の値は、ベース・キャッシュ名に付加されます。有効な値は文字列です。デフォルト値は-versionです。たとえば、Sessionsという名前のベース・ケースがあり、この名前修飾子が-versionに設定されている場合、関連付けられているバージョン・キャッシュの名前はSessions-versionになります。

<replicated-scheme>、<distributed-scheme>、またはtransactional-scheme

必須

バージョン情報の保持に使用されるキャッシュのスキームを指定します。有効な値は次のとおりです。



versioned-backing-map-scheme

使用場所: caching-schemesdistributed-schemereplicated-schemeoptimistic-scheme

説明

versioned-backing-map-schemeは、read-write-backing-map-schemeの拡張で、永続ストアのサイズ制限されたキャッシュを定義します。ここでは、オブジェクトのバージョニングを使用して、永続ストアに書き込む必要のある更新が判断されます。詳細は、「バージョニング」を参照してください。

実装

versioned-backing-map-schemeスキームは、com.tangosol.net.cache.VersionedBackingMapクラスによって実装されます。

外部ストアのキャッシュ

read-write-backing-map-schemeと同様、バージョニングされたバッキング・マップは、外部の永続キャッシュ・ストア(<cachestore-scheme>サブ要素を参照)によってバッキングされるキャッシュを保持します。キャッシュ・ミスでは、バックエンド・ストアまでリードスルーしてデータが取得されます。キャッシュ・ストアで、バックエンドのデータ・ストアに対する更新がサポートされる場合もあります。

リフレッシュアヘッドおよびライトビハインドのキャッシュ

read-write-backing-map-schemeと同様、リフレッシュアヘッド(<refresh-ahead>サブ要素を参照)とライトビハインド(<write-behind>サブ要素を参照)の両方で、キャッシングの最適化がサポートされます。詳細は、『Oracle Coherenceスタート・ガイド』の「リードスルー、ライトスルー、ライトビハインドおよびリフレッシュアヘッド・キャッシュ」を参照してください。

バージョニング

エントリの値でcom.tangosol.util.Versionableインタフェースが実装される場合、バージョニングされたバッキング・マップはバージョン識別子を使用して、更新を永続ストアに書き込む必要があるかどうかを判断します。この機能の主な利点は、クラスタ・ノードのフェイルオーバーが発生した場合に、永続ストアにエントリの最新バージョンがすでに書き込まれているかどうかをバックアップ・ノードで判断できることです。これにより、不必要な書込みを回避できます。

要素

表B-66は、versioned-backing-map-scheme要素で定義可能なサブ要素について説明しています。

表B-66 versioned-backing-map-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<class-name>

オプション

バージョニングされているバッキング・マップのカスタム実装を指定します。カスタム実装では、com.tangosol.net.cache.VersionedBackingMapクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<init-params>

オプション

初期化パラメータを指定します。これは、com.tangosol.run.xml.XmlConfigurableインタフェースを実装するバージョニングされたバッキング・マップのカスタム実装で使用されます。

<listener>

オプション

キャッシュ上で発生しているイベントの通知を受け取るcom.tangosol.util.MapListenerの実装を指定します。

<cachestore-scheme>

オプション

キャッシュするストアを指定します。指定しない場合、キャッシュ・データは内部キャッシュにのみ配置され(<internal-cache-scheme>サブ要素を参照)、そのキャッシュに対して実行された操作のみを反映します。

<internal-cache-scheme>

必須

エントリのキャッシュに使用されるcache-schemeを指定します。有効な値は次のとおりです。

<miss-cache-scheme>

オプション

キャッシュ・ミス情報を保持するcache-schemeを指定します。miss-cacheは、キャッシュ・ストアに見つからなかったキーの追跡に使用されます。キャッシュ・ストアにキーがないことを事前に知っておくことで、一部の操作がより迅速に実行されます。処理に時間がかかる可能性のあるキャッシュ・ストアへの問合せを回避できるからです。サイズが制限されたスキームを使用すると、キャッシュされるキャッシュ・ミスの数を制御できます。値を指定しないと、キャッシュ・ミスのデータは保持されません。有効な値は次のとおりです。

<read-only>

オプション

読取り専用にするかどうかを指定します。trueの場合、キャッシュはデータをキャッシュ・ストアからロードして読取り操作を行い、キャッシュが更新されたときにキャッシュ・ストアへの書込みは実行しません。有効な値は、trueまたはfalseです。デフォルト値はfalseです。

<write-delay>

オプション

ライトビハインド・キューでキャッシュ・ストアに対する非同期の書込みが遅延される時間間隔を指定します。この要素の値は、次の形式で指定する必要があります。

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、秒が単位として適用されます。0の場合、キャッシュ・ストアへの同期書込み(キューイングなし)が行われます。それ以外の場合、キャッシュ内の値が最後に更新されてから指定された秒数だけ遅延して、書込みが非同期で実行されます。デフォルトは0です。

<write-batch-factor>

オプション

write-batch-factor要素は、ライトビハインド・キュー・エントリのソフト熟成時間の計算に使用されます。キューのエントリは、ライトビハインド・キューにwrite-delay期間以上格納されると、書込み操作用に十分に熟成している(適切な書込み時である)と見なされます。ソフト熟成時間は、実際の熟成時間より前の時点になります。これより後では、エントリが(その他のすべての熟成エントリとソフト熟成エントリとともに)CashStoreに対するバッチ化された非同期の書込み操作に組み込まれます。この要素は、非同期の書込みが有効で(つまり、write-delay要素の値が0より大きくて)、CacheStorestoreAll()メソッドが実装されている場合にのみ適用されます。要素の値は、write-delay間隔の割合で表します。たとえば、値が0の場合、ライトビハインド・キューの熟成エントリのみがバッチに組み込まれます。逆に、値が1.0の場合は、現在キューに入れられているすべてのエントリがバッチに組み込まれ、write-delay要素の値は実質的に無視されます。有効な値は、1.0以下の正のダブルになります。デフォルトは0です。

<write-requeue-threshold>

オプション

追加のアクションを実行できるライトビハインド・キューのサイズを指定します。この値は、対応するログ・メッセージの頻度を制御します。たとえば、この値が100の場合、ライトビハインド・キューのサイズが100の倍数になるたびにログ・メッセージが生成されます。ゼロの場合、ライトビハインドの再キューは無効になります。有効な値は、正の整数またはゼロです。デフォルトは0です。

<refresh-ahead-factor>

オプション

refresh-ahead-factor要素は、キャッシュ・エントリのソフト失効時間の計算に使用されます。ソフト失効時間は、実際の失効時間より前の時点になります。これより後では、エントリへのアクセス・リクエストによって、エントリに対する非同期のロード・リクエストがスケジュール化されます。この属性は、内部キャッシュ(<internal-cache-scheme>サブ要素を参照)がlocal-schemeで、<location>サブ要素が構成されている場合にのみ適用されます。この値は、内部的なLocalCache失効間隔の割合で表します。0の場合、リフレッシュアヘッド・スケジュールが無効になります。1.0の場合、get操作によって非同期のリロードがただちにトリガーされます。有効な値は、1.0以下の正のダブルになります。デフォルト値は0です。

<rollback-cachestore-failures>

オプション

同期のキャッシュ・ストア操作でキャッチされた例外が、コール元のスレッドに再スローされるかどうかを指定します(ネットワークを介してリモート・メンバーに送信されることもあります)。この要素の値がfalseの場合、同期のキャッシュ・ストア操作でキャッチされた例外はローカルでログに記録され、内部キャッシュは更新されます。この値がtrueの場合、例外がコール元のスレッドに再スローされ、内部キャッシュは変更されません。この操作をトランザクション・コンテキスト内でコールした場合は、現在のトランザクションをロールバックするのと同様の操作になります。有効な値は、trueまたはfalseです。デフォルト値はfalseです。

<version-persistent-scheme>

オプション

永続キャッシュ・ストア内のエントリのバージョン識別子を追跡するcache-schmeを指定します(cachestore-schemeを参照)。

<version-transient-scheme>

オプション

一時内部キャッシュ内のエントリのバージョン識別子を追跡するcache-schmeを指定します(<internal-cache-scheme>サブ要素を参照)。

<manage-transient>

オプション

バッキング・マップが、一時バージョン・キャッシュを最新の状態に維持する役割を果たすかどうかを指定します。無効化されている場合、バッキング・マップは他のパーティが認識しない操作(エントリの失効など)についてのみ、一時バージョン・キャッシュの管理を行います。これは、たとえばversioned-near-schemeのような上位レベルで、同じ名前の一時バージョン・キャッシュがすでに存在している場合に使用されます。有効な値は、trueまたはfalseです。デフォルト値はfalseです。



versioned-near-scheme

使用場所: caching-schemes


注意:

Coherenceリリース2.3以降は、versioned-near-schemeではなく、near-schemeを使用することをお薦めします。従来のCoherenceアプリケーションでは、versioned-near-schemeを使用してオブジェクトのバージョニングの一貫性を保証していました。Coherence 2.3以降、near-schemeでは、改良された代替手段として、信頼性が高く効率的なフロント・キャッシュの無効化が組み込まれています。

説明

near-schemeと同様、versioned-near-schemeは、高速で小規模なフロントエンド・キャッシュと、低速で大容量のバックエンド・キャッシュで構成される2層キャッシュを定義します。フロントエンド(<front-end>サブ要素を参照)とバックエンド(<back-end>サブ要素を参照)は、通常のcache-schemesとして表されます。一般的なデプロイでは、フロントエンドにはlocal-schemeが、バックエンドにはdistributed-schemeが使用されます。バージョニングされているニア・キャッシュの詳細は、「ニア・キャッシュ」を参照してください。

実装

バージョニングされているニア・スキームは、com.tangosol.net.cache.VersionedNearCacheクラスによって実装されます。

バージョニング

オブジェクトのバージョニングを使用すると、フロント層とバック層の一貫性が保証されます。詳細は、<version-transient-scheme>のサブ要素を参照してください。

要素

表B-67は、near-scheme要素で定義可能なサブ要素について説明しています。

表B-67 versioned-near-schemeのサブ要素

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

<scheme-name>

オプション

スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。

<scheme-ref>

オプション

継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。

<class-name>

オプション

バージョニングされているニア・キャッシュのカスタム実装を指定します。指定されたクラスでは、com.tangosol.net.cache.VersionedNearCacheクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<init-params>

オプション

初期化パラメータを指定します。これは、com.tangosol.run.xml.XmlConfigurableインタフェースを実装するバージョニングされたニア・キャッシュのカスタム実装で使用されます。

<listener>

オプション

キャッシュ上で発生しているイベントの通知を受け取るcom.tangosol.util.MapListenerの実装を指定します。

<front-scheme>

必須

フロント層キャッシュの作成に使用するcache-schemeを指定します。有効な値は次のとおりです。

例:

<front-scheme>
  <local-scheme>
    <scheme-ref>default-eviction</scheme-ref>
  </local-scheme>
</front-scheme>

または

<front-scheme>
  <class-scheme>
    <class-name>com.tangosol.util.SafeHashMap</class-name>
    <init-params></init-params>
  </class-scheme>
</front-scheme>

<back-scheme>

必須

バック層キャッシュの作成に使用するcache-schemeを指定します。有効値は次のとおりです。

例:

<back-scheme>
  <distributed-scheme>
    <scheme-ref>default-distributed</scheme-ref>
  </distributed-scheme>
</back-scheme>

<version-transient-scheme>

オプション

キャッシュ・エントリのバージョニングに使用するスキームを指定します。これにより、フロント層とバック層の一貫性が保証されます。

<autostart>

オプション

autostart要素は、キャッシュ・サーバー(つまり、com.tangosol.net.DefaultCacheServer)で使用することを目的としています。この要素は、このキャッシュ・スキームに関連付けられたキャッシュ・サービスをクラスタ・ノードで自動的に起動するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値はfalseです。