この付録では、キャッシュ構成デプロイメント・ディスクリプタで使用できる要素のリファレンスと、ディスクリプタの簡単な概要を示します。キャッシュの構成方法および使用手順の詳細は、第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 キャッシュ構成の要素
使用場所: proxy-scheme
説明
acceptor-config
要素は、TCP/IP接続アクセプタの構成情報を指定します。接続アクセプタはプロキシ・サービスで使用され、Coherence*Extendクライアントからクラスタへの接続を有効にして、クライアントがクラスタに参加していなくても、クラスタの提供するサービスを使用できるようにします。
要素
表B-2は、acceptor-config
要素で定義可能なサブ要素について説明しています。
表B-2 acceptor-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
この接続アクセプタで許可される同時接続の最大数。有効な値は、正の整数および0です。値0は制限がないことを意味します。デフォルト値は0です。 |
オプション |
クライアントからクラスタへの接続の切断を検出するために接続アクセプタで使用される構成情報を指定します。 |
|
オプション |
接続アクセプタがユーザー定義型のシリアライズおよびデシリアライズに使用する <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> |
|
オプション |
Coherence*ExtendクライアントからクラスタへのTCP/IPを介した接続を有効にする、接続アクセプタの構成情報を指定します。 |
|
< |
オプション |
この接続アクセプタで使用するフィルタ名のリストを記述します。たとえば、 <use-filters> <filter-name>gzip</filter-name> </use-filters> |
使用場所: tcp-acceptor
、remote-addresses
説明
com.tangosol.net.AddressProvider
インタフェースを実装するアドレス・ファクトリの構成情報を記述します。
要素
表B-3は、address-provider
要素で定義可能なサブ要素について説明しています。
表B-3 address-providerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
この要素は、 |
< |
オプション |
アドレス・プロバイダ・インスタンスを作成するための、ファクトリ・クラスの完全修飾名を指定します。インスタンスは、 この要素は、 |
< |
オプション |
オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。 |
オプション |
|
使用場所: external-scheme
、paged-external-scheme
説明
async-store-manager
要素は、他のストア・マネージャの実装に、非同期の書込み機能を追加します。サポートされるストア・マネージャは次のとおりです。
custom-store-manager
: ストア・マネージャのカスタム実装を定義します。
bdb-store-manager
: Berkeley Database JEを使用してオンディクス・キャッシュを実装します。
lh-file-manager
: Coherence LHを使用してオンディクス・データベース・キャッシュを実装します。
nio-file-manager
: NIOを使用してメモリーマップ・ファイル・ベースのキャッシュを実装します。
nio-memory-manager
: NIOを使用してJVMヒープ外キャッシュ(インメモリー・キャッシュ)を実装します。
実装
このストア・マネージャは、com.tangosol.io.AsyncBinaryStoreManager
クラスによって実装されます。
要素
表B-4は、async-store-manager
要素で定義可能なサブ要素について説明しています。
表B-4 async-store-managerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
非同期に書き込まれるキューに配置される最大バイト数を指定します。この値を0に設定しても非同期の書込みが無効になるわけではありません。0が設定されている場合は、この実装にデフォルトの最大バイト数が必要であることを示します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[K|k|M|m]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、1が係数として適用されます。有効な値は、正のメモリー・サイズまたは0です。デフォルト値は4MBです。 |
オプション |
キャッシュ記憶域にBerkeley Database JEのオンディスク・データベースを使用するよう外部キャッシュを構成します。 |
|
< |
オプション |
|
オプション |
ストレージ・マネージャのカスタム実装を使用するよう外部キャッシュを構成します。 |
|
オプション |
初期化パラメータを指定します。これは、 |
|
オプション |
キャッシュ記憶域にCoherence LHのオンディスク・データベースを使用するよう外部キャッシュを構成します。 |
|
オプション |
キャッシュ記憶域にメモリーマップ・ファイルを使用するよう外部キャッシュを構成します。 |
|
オプション |
キャッシュ記憶域にJVMヒープ外のメモリー領域を使用するよう外部キャッシュを構成します。 |
使用場所: tcp-acceptor
説明
この要素には、TCP/IPアクセプタを使用してクラスタへの接続が許可される、TCP/IPイニシエータ・ホストのIPアドレス・コレクションを記述します。このコレクションが空の場合、制約は課せられません。任意の数のhost-address
要素およびhost-range
要素を指定できます。
要素
表B-5は、authorized-hosts
要素で定義可能なサブ要素について説明しています。
表B-5 authorized-hostsのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
IPアドレスまたはホスト名を指定します。これを指定すると、host-addressが指定されたホスト、または指定されたhost-range内のホストのみがクラスタに参加できます。内容のオーバーライド属性 |
|
オプション |
IPアドレスの範囲を指定します。これを指定すると、host-addressが指定されたホスト、または指定されたhost-range内のホストのみがクラスタに参加できます。 |
|
オプション |
特定のTCP/IPイニシエータを受け入れるかどうかを確認するためTCP/IPアクセプタで使用する |
内容のオーバーライド属性xml-override
およびid
を使用して、この要素の内容の全部または一部を、ベース・ドキュメントの外部にあるXMLドキュメントでオーバーライドすることもできます。「要素の属性」を参照してください。
使用場所: distributed-scheme
、optimistic-scheme
、replicated-scheme
説明
キャッシュ・サーバー内でのエントリの格納に使用するキャッシュのタイプを指定します。
オーバーフロー・ベースのバッキング・マップを使用する際は、対応するbackup-storage
でオーバーフローを構成することが重要です(可能であれば、backing-map
と同じスキームを使用します)。構成例については、「オーバーフローが設定されたパーティション・キャッシュ」を参照してください。
注意: partitioned サブ要素は、親要素がdistributed-scheme の場合にのみ使用されます。 |
要素
表B-6は、backing-map-scheme
要素で定義可能なサブ要素について説明しています。
表B-6 backing-map-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
バッキング・マップ自体をパーティション化するかどうかを指定します。これはdistributed-scheme内でのみ考慮されます。第12章「記憶域およびバッキング・マップの実装」を参照してください。 |
|
オプション |
クラス・スキームは、任意のJavaオブジェクトをインスタンス化して、他のスキームでの使用を可能にするメカニズムを提供します。この要素を含むスキームによって、拡張の必要なクラスまたはインタフェースが指定されます。 |
|
オプション |
外部スキームを使用すると、JVMヒープ・ベースでないキャッシュを定義することで大容量の記憶域の使用が可能になります。 |
|
オプション |
ローカル・キャッシュ・スキームは、インメモリー・ローカル・キャッシュを定義します。ローカル・キャッシュは一般に、他のキャッシュ・スキーム内にネストされます(ニア・スキームのフロント層としてなど)。 |
|
オプション |
external-scheme同様、 |
|
オプション |
|
|
<read-write-backing-map-scheme |
オプション |
read-write-backing-map-schemeは、永続ストアのサイズ制限されたキャッシュを提供するバッキング・マップを定義します。 |
オプション |
|
使用場所: distributed-scheme
説明
backup-storage
要素は、パーティション・キャッシュのバックアップ記憶域のタイプと構成を指定します。
要素
次の表は、backup-storage
要素で定義可能なサブ要素について説明しています。
表B-7 backup-storageのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
バックアップ・データの保持に使用する記憶域のタイプを指定します。有効な値は次のとおりです。
デフォルト値は、 |
< |
オプション |
customタイプにのみ適用されます。カスタム記憶域実装のクラス名を指定します。クラスに |
< |
オプション |
file-mappedタイプにのみ適用されます。ディスク永続マネージャ( |
< |
オプション |
off-heapおよびfile-mappedタイプにのみ適用されます。バッファの初期サイズをバイト単位で指定します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]]?[K|k|M|m|G|g]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、Mが係数として適用されます。有効な値は、1から |
< |
オプション |
off-heapタイプおよびfile-mappedタイプにのみ適用されます。バッファの初期サイズをバイト単位で指定します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]]?[K|k|M|m|G|g]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、Mが係数として適用されます。有効な値は、1から |
< |
オプション |
schemタイプにのみ適用されます。 |
使用場所: external-scheme
、paged-external-scheme
、async-store-manager
注意: bdb-store-manager を使用するには、Berkeley Database JEのJavaクラス・ライブラリが必要です。詳細は、Berkeley Database JEの製品ページを参照してください。
|
説明
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のサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
Berkeley Database |
< |
オプション |
Berkeley Database JEのストア・マネージャがファイルを格納するルート・ディレクトリのパス名を指定します。指定しない場合、または存在しないディレクトリを指定した場合は、デフォルトの場所にある一時ディレクトリが使用されます。 |
オプション |
追加のBerkeley DBの構成設定を指定します。Berkeley DBの構成の手順を参照してください。
|
|
< |
オプション |
Berkeley Database JEのストア・マネージャがデータを格納するデータベース表名を指定します。このパラメータを指定すると、 このプロパティを指定する場合は、 |
使用場所: operation-bundling
説明
bundle-config
要素は、1つ以上のバンドル可能な操作に対するバンドル方針の構成を指定します。
要素
表B-9は、bundle-config
要素で定義可能なサブ要素について説明しています。
表B-9 bundle-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
(実行時統計に基づく)preferred-size値の自動調整を許可するかどうかを指定します。 有効な値は、 |
< |
オプション |
個別の実行リクエストをバンドルして対応するバルク操作にまとめて渡すため、各実行リクエストに許容される最大遅延時間をミリ秒単位で指定します。指定された遅延時間内にpreferred-sizeしきい値に達した場合は、バンドルが即座に処理されます。 有効な値は正の数値です。デフォルト値は1です。 |
< |
必須 |
複数のスレッドに対して同時実行される呼出しを、機能的に類似した1つのバルク操作にバンドルする操作名を指定します。バルク操作は、単一の引数でなく、引数のコレクションを取ります。 有効な値は、バンドル構成のコンテキストによって異なります。<
<
いずれの場合も、すべての有効な操作に対応する |
< |
オプション |
バンドル・サイズのしきい値を指定します。バンドル・サイズがこの値に達すると、対応するバルク操作が即座に起動されます。この値は、コンテキスト固有の単位で測定されます。 有効な値は、0(バンドルが無効)または正の値です。デフォルト値は0です。 |
< |
オプション |
個別の(非バンドル)リクエストを同時実行することが要求されるスレッドの最小数を指定します。スレッド数がこの値を超えると、バンドル機能がパススルー・モードからバンドル・モードに切り替わります。 有効な値は正の数値です。デフォルト値は4です。 |
ルート要素
説明
cache-config
要素は、キャッシュ構成ディスクリプタcoherence-cache-config.xml
のルート要素です。このドキュメントの詳細は、「キャッシュ構成デプロイメント・ディスクリプタ」を参照してください。
高レベルのキャッシュ構成は、キャッシュ・スキームとキャッシュ・スキーム・マッピングで構成されます。キャッシュ・スキームには、(データベースでバッキングされる分散キャッシュなど)キャッシュのタイプを記述します。キャッシュのマッピングには、特定のキャッシュ名に対して使用されるスキームを定義します。
要素
表B-10は、cache-config
要素で定義可能なサブ要素について説明しています。
表B-10 cache-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
必須 |
キャッシュ名に基づいて、キャッシュに使用されるキャッシュ・スキームを指定します。 |
|
必須 |
クラスタ内で使用可能なキャッシュ・スキームを定義します。 |
|
< |
オプション |
ファクトリ全体のデフォルト設定を定義します。 |
使用場所: caching-scheme-mapping
説明
cache-mapping
要素によって、特定のキャッシュ名またはパターンで使用されるcaching-schemesが指定されます。
要素
表B-11は、cache-mapping
要素で定義可能なサブ要素について説明しています。
表B-11 cache-mappingのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
キャッシュ名または名前のパターンを指定します。この名前はキャッシュ・ファクトリ内で一意です。サポートされるキャッシュ名のパターンは次のとおりです。
パターンは特異性の高い順に一致します(可能なかぎり、特異性のある定義から選択されます)。たとえば、 |
< |
必須 |
キャッシュ・スキーム名を記述します。この名前は構成ファイル内で一意です。キャッシュ・スキームはcaching-schemes要素で構成されます。 |
オプション |
置換可能なキャッシュ・スキーム・パラメータの指定を可能にします。キャッシュ・スキームの解析時に、形式 <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>
|
使用場所: proxy-config
説明
cache-service-proxy
要素には、プロキシ・サービスによって管理されるキャッシュ・サービス・プロキシの構成情報を記述します。
要素
表B-12は、cache-service-proxy
要素で定義可能なサブ要素について説明しています。
表B-12 cache-service-proxyのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
キャッシュ・サービス・プロキシが有効化されているかどうかを指定します。無効化されている場合、クライアントはプロキシ・キャッシュにアクセスできません。有効な値は、 |
< |
オプション |
リモート・クライアントからのロック・リクエストをプロキシ・キャッシュで許可するかどうかを指定します。有効な値は、 |
< |
オプション |
リモート・クライアントからのキャッシュ更新リクエストをプロキシ・キャッシュで禁止するかどうかを指定します。有効な値は、 |
< |
オプション |
|
オプション |
|
使用場所: local-scheme、read-write-backing-map-scheme、versioned-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> |
オプション |
継承元の別のスキーム名を指定します。「スキームの継承の使用方法」を参照してください。 |
オプション |
キャッシュ・ストアの実装を指定します。指定されたクラスでは、次のいずれかのインタフェースを実装する必要があります。
|
|
オプション |
キャッシュ・ストアの実装としてCoherence*Extendを使用するようcachestore-schemeを構成します。 |
|
オプション |
バンドル方針の構成情報を指定します。 |
使用場所: cache-config
説明
キャッシュ名(または名前のパターン)とcaching-schemesとのマッピングを定義します。たとえば、名前がaccounts-
で始まるキャッシュでは分散(distributed-scheme)キャッシュ・スキームを使用し、名前がrates-
で始まるキャッシュではreplicated-scheme
キャッシュ・スキームを使用するように定義できます。
要素
表B-14は、caching-scheme-mapping
要素で定義可能なサブ要素について説明しています。
表B-14 caching-scheme-mappingのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
必須 |
キャッシュ名と、このキャッシュで使用するキャッシュ・スキームとの単一バインディングを記述します。 |
使用場所: cache-config
説明
caching-schemes
要素は、一連のキャッシュ・スキーム要素を定義します。各キャッシュ・スキームは、キャッシュのタイプを定義します(データベースでバッキングされるパーティション・キャッシュ、LRUエビクション・ポリシーが指定されたローカル・キャッシュなど)。スキームのタイプはマッピング(「caching-scheme-mapping」を参照)を使用して実際のキャッシュにバインドされます。
要素
表B-15は、caching-schemes
要素で定義可能な各スキーム・タイプについて説明しています。
表B-15 caching-schemesのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
on-heapキャッシュ記憶域を提供するキャッシュ・スキームを定義します。 |
|
オプション |
off-heapキャッシュ記憶域(オンディスク・キャッシュなど)を提供するキャッシュ・スキームを定義します。 |
|
オプション |
時間ベースのページングを使用してサイズ制限される、off-heapキャッシュ記憶域を提供するキャッシュ・スキームを定義します。 |
|
オプション |
キャッシュ・エントリの記憶域がクラスタ・ノード全体でパーティション化されるキャッシュ・スキームを定義します。 |
|
オプション |
トランザクションが保証され、キャッシュ・エントリの記憶域がクラスタ・ノード全体でパーティション化されるキャッシュ・スキームを定義します。 |
|
オプション |
各キャッシュ・エントリがすべてのクラスタ・ノードに格納されるキャッシュ・スキームを定義します。 |
|
オプション |
ペシミスティック・ロックではなくオプティミスティック・ロックを使用するレプリケーション・キャッシュ・スキームを定義します。 |
|
オプション |
高速のローカル・フロント層と大規模なバック層のキャッシュで構成される2層キャッシュ・スキームを定義します。 |
|
オプション |
オブジェクトのバージョニングを使用してフロント層とバック層の一貫性を維持するニア・スキームを定義します。 |
|
オプション |
サイズ制限のあるフロント層のオーバーフローで削除されたエントリが大規模なバック層キャッシュに格納される2層キャッシュ・スキームを定義します。 |
|
オプション |
クラスタ・ノード全体でカスタム操作をパラレルに実行するための起動サービスを定義します。 |
|
オプション |
永続ストアのキャッシュを提供するバッキング・マップ・スキームを定義します。 |
|
オプション |
オブジェクトのバージョニングを使用して、永続ストアに書き込む必要のある更新を判断するバッキング・マップ・スキームを定義します。 |
|
オプション |
Coherence*Extendを使用してCoherenceクラスタ外部からのキャッシュへのアクセスを有効にするキャッシュ・スキームを定義します。 |
|
オプション |
キャッシュのカスタム実装を使用してキャッシュ・スキームを定義します。カスタム実装では、 |
|
オプション |
注意: Coherence 3.0以降、disk-scheme構成要素は非推奨になり、external-schemeおよびpaged-external-scheme構成要素に置き換えられています。 |
使用場所: caching-schemes
、local-scheme
、distributed-scheme
、replicated-scheme
、optimistic-scheme
、near-scheme
、versioned-near-scheme
、overflow-scheme
、read-write-backing-map-scheme
、versioned-backing-map-scheme
、cachestore-scheme
、listener
、eviction-policy
、unit-calculator
説明
クラス・スキームは、任意のJavaオブジェクトをインスタンス化して、他のスキームでの使用を可能にするメカニズムを提供します。この要素を含むスキームによって、拡張の必要なクラスまたはインタフェースが指定されます。class-scheme
の使用例については、「データベースのキャッシュ」を参照してください。
class-scheme
では、class-name
を使用して直接的に、またはclass-factory-name
およびmethod-name
を使用して間接的にオブジェクトのインスタンス化を構成できます。class-scheme
は、class-name
で構成するか、class-factory-name
とmethod-name
で構成する必要があります。
要素
表B-16は、class-scheme
要素で定義可能なサブ要素について説明しています。
表B-16 class-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
インスタンス化するJavaクラスの完全修飾名を記述します。このクラスは、含まれるスキームの記述に従って適切な実装クラスを拡張し、スーパークラスと完全に同一のpublicなコンストラクタのセットを宣言する必要があります。 |
< |
オプション |
オブジェクトのインスタンス化でファクトリとして使用されるJavaクラスの完全修飾名を指定します。 |
< |
オプション |
オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。 |
オプション |
|
使用場所: external-scheme
、paged-external-scheme
、async-store-manager
説明
外部キャッシュで使用するストア・マネージャのカスタム実装の作成および構成に使用されます。
要素
表B-17は、custom-store-manager
要素で定義可能なサブ要素について説明しています。
表B-17 custom-store-managerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
ストア・マネージャの実装を指定します。指定したクラスは、 |
オプション |
初期化パラメータを指定します。これは、 |
使用場所: cache-config
説明
defaults
要素は、ファクトリ全体のデフォルト設定を定義します。この機能は、これらの設定を明示的に定義していないすべてのサービスで使用される、シリアライザおよびソケット・プロバイダのグローバル構成を有効化します。
要素
表B-18は、defaults
要素で定義可能なサブ要素について説明しています。
表B-18 defaultsのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
ユーザー定義型のシリアライズおよびデシリアライズに使用する |
|
ソケット・プロバイダの構成情報を指定するか、またはオペレーション・デプロイメント・ディスクリプタの <socket-provider>ssl</socket-provider> この設定で指定されるのは、Coherence*Extendサービスのデフォルト・ソケット・プロバイダのみです。TCMPソケット・プロバイダは、オペレーション構成の<unicast-listener>要素内で指定されます。 |
注意: Coherence 3.0以降、disk-scheme構成要素は非推奨になり、<external-scheme>および<paged-external-scheme>構成要素に置き換えられています。 |
使用場所: caching-schemes
、near-scheme
、versioned-near-scheme
、overflow-scheme
、versioned-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のサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
このスキームで作成されたキャッシュを管理するサービス名を指定します。サービスは、 |
オプション |
ユーザー定義型のシリアライズおよびデシリアライズに使用する |
|
< |
オプション |
キャッシュ上で発生しているイベントの通知を受け取る |
オプション |
キャッシュ・サーバー内でのエントリの格納に使用するキャッシュのタイプを指定します。 有効なスキームは次のとおりです。 ヒープ外バッキング・マップを使用する際は、対応する< |
|
< |
オプション |
パーティション(分散)キャッシュを分割するパーティションの数を指定します。パーティション・キャッシュ・サービスを実行し、local-storage( パーティションの数は素数とし、いずれのパーティションのサイズも50MBを超えることのないように十分なパーティション数を指定する必要があります。 次に、サービス記憶域サイズに応じた適切なデフォルト設定を示します。 service storage partition-count _______________ ______________ 100M 257 1G 509 10G 2039 50G 4093 100G 8191 最初の1,000個の素数のリストについては、次のサイトを参照してください。 有効値は正の整数です。デフォルト値は、 |
オプション |
キー間の対応付けを行い、対応付けられたキーの同一パーティションへの格納を可能にするクラスを指定します。この実装には、パラメータがゼロのpublicなコンストラクタが必要です。 |
|
オプション |
|
|
オプション |
|
|
< |
オプション |
パーティション・キャッシュ・サービスのうち、各保存単位のバックアップ・データをキャッシュに保持するメンバーの数を指定します。この値が0になっていると、異常終了した場合にキャッシュ内のデータの一部が失われます。この値がNになっていると、即座に終了したクラスタ・ノードの数がN以内の場合、キャッシュ・データが保持されます。サイズMのパーティション・キャッシュを維持する場合、クラスタ内の合計メモリー使用量はクラスタ・ノードの数に依存するのではなく、M*(N+1)となります。推奨値は0または1です。デフォルト値は、 |
< |
オプション |
ライトビハインドを必要としないキャッシュ内の各保存単位のバックアップ・データ(つまり、クラスタ全体がシャットダウンしても失われにくいデータ)を保持する、パーティション・キャッシュ・サービスのメンバー数を指定します。具体的には、保存単位にライトビハインドが必要であると指定されている場合は、 この要素の値は0に設定するか、要素の指定を完全に省略する必要があります。論理的な根拠として、このデータは別のデータ・ストアにバックアップされるため、書込み対象のライトビハインド・キューにデータが一時的に配置される場合を除いて、メモリー内でのバックアップは必要ありません。値0は、ライトビハインドが発生した場合に、そのデータのバックアップ・コピーが破棄されることを意味します。ただし、ライトビハインドが発生するまでは、 推奨値は0です。それ以外の場合は、この要素の指定を完全に省略してください。 |
オプション |
パーティション・キャッシュのバックアップ記憶域のタイプと構成を指定します。 |
|
< |
オプション |
パーティション・キャッシュ・サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。有効な値は、正の整数またはゼロです。デフォルト値は、 |
< |
オプション |
リース所有権の精度を指定します。リリース2.3以降で使用できます。有効な値は次のとおりです。
値がthreadの場合、ロックはそのロックを取得したスレッドによって保持され、そのスレッドによってのみ解放されます。値がmemberの場合、ロックはクラスタ・ノードによって保持され、ロックを取得したクラスタ・ノード上で実行されるスレッドによって解放できます。デフォルト値は、 |
< |
オプション |
プライマリ・バケット分散のしきい値をキロバイト単位で指定します。パーティション・キャッシュ・サービスに新しいノードが結合する場合、またはサービスのメンバーのいずれかの結合が解除される場合、残りのノードによって、バケット所有権の再分散タスクが実行されます。このプロセスでは、所有権情報とともに既存のデータの均衡化が再実行されます。このパラメータでは、データ転送通信で優先されるメッセージ・サイズを示します。この値を低く設定すると、分散プロセスの所要時間は長くなりますが、このアクティビティ実行中のネットワーク帯域幅の使用量は軽減されます。有効な値は、ゼロより大きな整数です。デフォルト値は、 |
< |
オプション |
クラスタ・ノードをクラスタの記憶域として機能させる(つまり、パーティションを保持する)かどうかを指定します。無効化した場合、そのノードはキャッシュ・クライアントと見なされます。 通常、構成ファイル内ではこの値を未指定にしておき、システム・プロパティtangosol.coherence.distributed.localstorageを使用し、プロセスごとに設定します。これによって、キャッシュ・クライアントとキャッシュ・サーバーは、同じ構成ディスクリプタを使用できます。 有効な値は、 |
< |
オプション |
|
< |
オプション |
タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。注意: ポストされたタスクがまだ開始されていない場合は、ハングと見なされません。この属性は、スレッド・プールが使用されている( |
< |
オプション |
サービス・ワーカー・スレッド上で実行するリクエストのタイムアウト値をミリ秒単位で指定します。この属性は、スレッド・プールが使用されている( |
< |
オプション |
レスポンスが来るまでクライアントが待機する最大時間を指定します。この時間を超過すると、元のリクエストが破棄されます。リクエスト時間はクライアント側で測定されるもので、対応するサーバー・ノードに対して実行のためのリクエストが送信されてからの経過時間に次の時間を加えたものです。
有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、 |
|
オプション |
サービスおよび依存するスレッドをガードするために使用するガーディアンのタイムアウト値を指定します。指定のサービスに対して要素が指定されていない場合、デフォルトのガーディアンのタイムアウト( この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。 |
|
オプション |
動作が異常なサービス・スレッドをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。 有効な値は次のとおりです。
デフォルト値は |
|
オプション |
|
オプション |
バンドル方針の構成情報を指定します。 |
|
オプション |
パーティション・キャッシュ・サービス用のクォーラム・ポリシー設定を指定します。 |
使用場所: caching-schemes
、distributed-scheme
、replicated-scheme
、optimistic-scheme
、near-scheme
、versioned-near-scheme
、overflow-scheme
、read-write-backing-map-scheme
、versioned-backing-map-scheme
説明
外部スキームを使用すると、JVMヒープ・ベースでないキャッシュを定義することで大容量の記憶域の使用が可能になります。様々な外部キャッシュの構成例は、「ローカル・キャッシュ(単一のJVMからアクセス可能)」を参照してください。
実装
このスキームは、次を使用して実装されます。
com.tangosol.net.cache.SerializationMap
: サイズ制限のないキャッシュ
com.tangosol.net.cache.SerializationCache
: サイズ制限のあるキャッシュ
実装タイプは次の規則に従って選択されます。
<high-units>
サブ要素に0以外の値が指定されている場合はSerializationCache
が使用されます。
これ以外の場合はSerializationMap
が使用されます。
プラッガブルなストレージ・マネージャ
外部スキームでは、プラッガブルなストア・マネージャを使用して、バイナリ・キー値のペアの格納と取得を行います。サポートされるストア・マネージャは次のとおりです。
他のストア・マネージャの実装に対して非同期の書込み機能を提供するラッパー
ストア・マネージャのカスタム実装定義が可能
オンディスク・キャッシュの実装にBerkeley Database JEを使用
オンディスク・データベース・キャッシュの実装にCoherence LHを使用
メモリーマップ・ファイル・ベースのキャッシュの実装にNIOを使用
JVMヒープ外キャッシュ(インメモリー・キャッシュ)の実装にNIOを使用
サイズ制限のあるキャッシュ
このキャッシュはサイズ制限のあるキャッシュとして構成できます。これにより、キャッシュが最大許容サイズ(<high-units>
サブ要素)に達すると、自動的に小さなサイズへのプルーニングが行われます。
エントリの有効期限
外部スキームでは、<expiry-delay>
サブ要素の構成に従って、値の有効期間に基づいたエントリの自動失効がサポートされます。
永続性(長期記憶域)
外部キャッシュは一般に、大きなデータ・セットの一時記憶域(たとえば、overflow-scheme
のバック層)として使用されます。ただし、一部の実装では非クラスタ・キャッシュの永続性がサポートされます。詳細は、bdb-store-manager
の<store-name>
サブ要素およびlh-file-manager
の<manager-filename>
サブ要素を参照してください。クラスタ化の永続性は、distributed-scheme
のread-write-backing-map-scheme
を使用して構成します。
要素
表B-20は、external-scheme
要素で定義可能なサブ要素について説明しています。
表B-20 external-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
外部キャッシュのカスタム実装を指定します。カスタム実装では、次のいずれかのクラスを拡張する必要があります。
また、スーパークラスと完全に同一のpublicなコンストラクタのセットを宣言する必要があります。 |
< |
オプション |
初期化パラメータを指定します。これは、 |
< |
オプション |
キャッシュ上で発生しているイベントの通知を受け取る |
< |
オプション |
キャッシュのサイズを制限するために使用されます。この要素には、プルーニングが開始されるまでキャッシュに配置できる単位の最大数を記述します。エントリは測定単位になります。この制限を超えると、キャッシュでプルーニング・プロセスが開始され、単位数がこの制限を下回るまで最低使用頻度のエントリが順番に削除されます。スキームの |
< |
オプション |
使用する単位換算カリキュレータのタイプを指定します。単位換算カリキュレータは、特定のオブジェクトのコスト(単位)の決定に使用されます。有効な値は次のとおりです。
この要素は、 |
< |
オプション |
unit-factor要素は、units、low-unitsおよびhigh-unitsの各プロパティの調整に使用する係数を指定します。たとえば、 たとえば、BINARY単位換算カリキュレータでは、係数1048576を使用してバイトをメガバイトに換算できます。 注意: この要素は、units、low-unitsおよびhigh-unitsの各プロパティのタイプを32ビット値から64ビット値に変更することを回避するためにのみ導入されたものであり、high-units要素が正の数値に設定されている場合にのみ使用されます。Coherenceの今後のリリースでは、この要素が削除される見込みです。 有効な値は正の整数です。デフォルト値は |
< |
オプション |
前回の更新からエントリが期限切れとなるまでの、キャッシュでエントリが保持される期間を指定します。期限切れになったキャッシュ内のエントリはクライアントからアクセス不能となり削除されます。 この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、秒が単位として適用されます。値0は期限がないことを意味します。デフォルト値は 注意: expiry-delayのパラメータ ( |
オプション |
他のストレージ・マネージャに対して非同期のストレージ・マネージャ・ラッパーを使用するよう外部キャッシュを構成します。「プラッガブルなストレージ・マネージャ」を参照してください。 |
|
オプション |
ストレージ・マネージャのカスタム実装を使用するよう外部キャッシュを構成します。 |
|
オプション |
キャッシュ記憶域にBerkeley Database JEのオンディスク・データベースを使用するよう外部キャッシュを構成します。 |
|
オプション |
キャッシュ記憶域にCoherence LHのオンディスク・データベースを使用するよう外部キャッシュを構成します。 |
|
オプション |
キャッシュ記憶域にメモリーマップ・ファイルを使用するよう外部キャッシュを構成します。 |
|
オプション |
キャッシュ記憶域にJVMヒープ外のメモリー領域を使用するよう外部キャッシュを構成します。 |
使用場所: ssl
説明
<identity-manager>
要素には、javax.net.ssl.KeyManager
インスタンスを初期化するための構成情報を記述します。
アイデンティティ・マネージャは、そのピアへのローカル接続を認証するために使用されるキー・マテリアルの管理を行います。キー・マテリアルが使用できない場合、その接続で認証資格証明を提示することはできません。
要素
表B-21は、identity-manager
要素で定義可能なサブ要素について説明しています。
表B-21 identity-managerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
アイデンティティ・マネージャによって使用されるアルゴリズムを指定します。デフォルト値は |
|
オプション |
セキュリティ・プロバイダ・インスタンスの構成を指定します。 |
オプション |
キー・ストア実装の構成を指定します。 |
|
|
必須 |
秘密鍵のパスワードを指定します。 |
使用場所: remote-cache-scheme、remote-invocation-scheme
説明
initiator-config
要素は、TCP/IP接続イニシエータの構成情報を指定します。接続イニシエータを使用すると、Coherence*Extendクライアントからクラスタへの接続が有効になり、クライアントがクラスタに参加していなくても、クラスタの提供するサービスを使用できるようになります。
要素
表B-22は、initiator-config
要素で定義可能なサブ要素について説明しています。
表B-22 initiator-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
クライアントからクラスタへの接続の切断を検出するために接続イニシエータで使用される構成情報を指定します。 |
|
オプション |
ユーザー定義型のシリアライズおよびデシリアライズに使用する |
|
オプション |
TCP/IPを介してクラスタに接続する、接続イニシエータの構成情報を指定します。 |
|
< |
オプション |
この接続イニシエータで使用するフィルタ名のリストを記述します。たとえば、 <use-filters> <filter-name>gzip</filter-name> </use-filters> |
使用場所: init-params
個別の初期化パラメータを定義します。
要素
表B-23は、init-param
要素で定義可能なサブ要素について説明しています。
表B-23 init-paramのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
初期化パラメータの名前を記述します。例: <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> |
< |
オプション |
初期化パラメータのJavaタイプを記述します。次の標準タイプがサポートされています。
例: <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> |
< |
オプション |
初期化パラメータの値を記述します。この値は、パラメータのJavaタイプに固有の形式にします。 |
使用場所: class-scheme、cache-mapping
説明
一連の初期化パラメータを、名前と値のペアで定義します。init-params
の使用例については、「データベースのパーティション・キャッシュ」を参照してください。
要素
表B-24は、init-params
要素で定義可能なサブ要素について説明しています。
使用場所: serializer、socket-provider、service-failure-policy
説明
<instance>
要素には、カスタム機能をプラグインするために使用される実装クラスまたはクラス・ファクトリの構成を記述します。
要素
表B-25は、instance
要素で定義可能なサブ要素について説明しています。
表B-25 instanceのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
実装クラスの完全修飾名を指定します。 この要素は、 |
|
オプション |
実装クラス・インスタンスを作成するための、ファクトリ・クラスの完全修飾名を指定します。 この要素は、 |
< |
オプション |
オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。 |
オプション |
実装クラスのクラス初期化パラメータを記述します。 |
使用場所: caching-schemes
説明
起動サービスを定義します。起動サービスは、任意の数のクラスタ・ノード上でカスタム操作をパラレルに実行するために使用します。詳細は、com.tangosol.net.InvocationService
APIを参照してください。
要素
次の表は、invocation-scheme要素で定義可能なサブ要素について説明しています。
表B-26 invocation-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
このスキームからの起動を管理するサービス名を指定します。 |
オプション |
ユーザー定義型のシリアライズおよびデシリアライズに使用する |
|
< |
オプション |
起動サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。有効な値は、正の整数またはゼロです。デフォルト値は、 |
< |
オプション |
|
|
オプション |
タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。注意: ポストされたタスクがまだ開始されていない場合は、ハングと見なされません。この属性は、スレッド・プールが使用されている( |
<task-timeout> |
オプション |
タイムアウト可能なタスク(たとえば、 |
|
オプション |
サービスおよび依存するスレッドをガードするために使用するガーディアンのタイムアウト値を指定します。指定のサービスに対して要素が指定されていない場合、デフォルトのガーディアンのタイムアウト( この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。 |
|
オプション |
動作が異常なサービス・スレッドをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。 有効な値は次のとおりです。
デフォルト値は |
|
オプション |
|
<request-timeout> |
オプション |
タイムアウト可能なリクエスト(たとえば、 (1)実行側のノード(サーバー)にリクエストを配信するための所要時間(2)タスクが受信されてサービス・キューに入れられてから実行が開始されるまでの間隔(3)タスクの実行時間(4)クライアントに結果を返信するための所要時間 有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、 |
使用場所: proxy-config
説明
invocation-service-proxy
要素には、プロキシ・サービスによって管理される起動サービス・プロキシの構成情報を記述します。
要素
表B-27は、invocation-service-proxy
要素で定義可能なサブ要素について説明しています。
表B-27 invocation-service-proxyのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
起動サービス・プロキシが有効化されているかどうかを指定します。無効化されている場合、クライアントはプロキシ・サービスJVMで |
< |
オプション |
|
オプション |
|
注意: Coherence*Extend-JMSのサポートは非推奨になりました。 |
使用場所: acceptor-config
説明
jms-acceptor
要素は、Coherence*ExtendクライアントからのJMSを介した接続を受け入れる接続アクセプタの構成情報を指定します。詳細および構成例については、『Oracle Coherenceクライアント・ガイド』を参照してください。
要素
表B-28は、jms-acceptor
要素で定義可能なサブ要素について説明しています。
表B-28 jms-acceptorのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
接続アクセプタで使用されるJMS |
< |
必須 |
接続アクセプタで使用されるJMS QueueのJNDI名を指定します。 |
注意: Coherence*Extend-JMSのサポートは非推奨になりました。 |
使用場所: initiator-config
説明
jms-acceptor
要素は、Coherence*Extendクライアントからリモート・クラスタへのJMSを介した接続を有効にする接続イニシエータの構成情報を指定します。詳細および構成例については、『Oracle Coherenceクライアント・ガイド』を参照してください。
要素
次の表は、jms-initiator要素で定義可能なサブ要素について説明しています。
表B-29 jms-initiatorのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
接続イニシエータで使用されるJMS |
< |
必須 |
接続イニシエータで使用されるJMS QueueのJNDI名を指定します。 |
< |
オプション |
接続アクセプタとの接続を確立するまで待機する最大時間を指定します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は無限のタイムアウトです。 |
使用場所: distributed-scheme
説明
キーの対応付けを決定するcom.tangosol.net.partition.KeyAssociator
の実装を指定します。これにより、関連するキーを同じパーティションに格納することができます。
また、com.tangosol.net.cache.KeyAssociation
インタフェースを実装することにより、キャッシュのキーで関連付けを管理することもできます。
要素
表B-30は、key-associator要素で定義可能なサブ要素について説明しています。
表B-30 key-associatorのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
|
使用場所: distributed-scheme
説明
キーを格納するパーティションを決定するcom.tangosol.net.partition.KeyPartitioningStrategy
の実装を指定します。
要素
表B-31は、key-partitioning要素で定義可能なサブ要素について説明しています。
表B-31 key-partitioningのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
|
使用場所: identity-manager、trust-manager
説明
key-store
要素は、SSLの実装時に使用するキー・ストア実装の構成を指定します。キー・ストア実装は、java.security.KeyStore
クラスのインスタンスです。
要素
表B-32は、key-store
要素で定義可能なサブ要素について説明しています。
表B-32 key-storeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
必須 |
キー・ストアへのUniform Resource Locator(URL)を指定します。 |
|
オプション |
キャッシュ・ストアのパスワードを指定します。 |
|
オプション |
|
使用場所: external-scheme、paged-external-scheme、async-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のサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
LH |
オプション |
初期化パラメータを指定します。これは、 |
|
< |
オプション |
LHファイル・マネージャがファイルを格納するルート・ディレクトリのパス名を指定します。指定しない場合、または存在しないディレクトリを指定した場合には、デフォルトの場所にある一時ファイルが使用されます。 |
< |
オプション |
LHファイル・マネージャがデータを格納する非一時(永続)ファイルの名前を指定します。このパラメータを指定すると、lh-file-managerでは非一時データベース・インスタンスが使用されます。このパラメータは、非一時ファイルのキャッシュ・ローダーでバッキングされるローカル・キャッシュを対象としてのみ使用されるもので、これにより、ローカル・キャッシュには起動時にディスク・ファイルからデータが事前移入されるようになります。指定する際は、「パラメータ・マクロの使用」で説明されている |
使用場所: local-scheme
、external-scheme
、paged-external-scheme
、distributed-scheme
、replicated-scheme
、optimistic-scheme
、near-scheme
、versioned-near-scheme
、overflow-scheme
、read-write-backing-map-scheme
、versioned-backing-map-scheme
説明
Listener要素は、キャッシュ上で発生しているイベントの通知を受け取るcom.tangosol.util.MapListener
の実装を指定します。
要素
次の表は、listener要素で定義可能なサブ要素について説明しています。
表B-34 listenerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
必須 |
使用するlistener実装の完全なクラス名を指定します。指定したクラスは、 |
使用場所: tcp-acceptor、tcp-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のサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
TCP/IPソケットがリスニングおよび公開を行うアドレス(IPまたはDNS名)を指定します。 |
< |
オプション |
TCP/IPソケットがリスニングおよび公開を行うポートを指定します。有効な値は1から65535です。 TCP/IPサーバーのコンテキストで使用される場合(つまり、TCPアクセプタ用)、ポートの子要素が必要です。 |
使用場所: caching-schemes
、distributed-scheme
、replicated-scheme
、optimistic-scheme
、near-scheme
、versioned-near-scheme
、overflow-scheme
、read-write-backing-map-scheme
、versioned-backing-map-scheme
、backing-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のサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
このスキームで作成されたキャッシュを管理するサービス名を指定します。サービスは、 |
< |
オプション |
ローカル・キャッシュのカスタム実装を指定します。カスタム実装では、 |
オプション |
初期化パラメータを指定します。これは、 |
|
< |
オプション |
使用するエビクション・ポリシーのタイプを指定します。有効な値は次のとおりです。
デフォルト値は |
< |
オプション |
キャッシュのサイズを制限するために使用されます。この要素には、プルーニングが開始されるまでキャッシュに配置できる単位の最大数を記述します。別のunit-calculator( |
< |
オプション |
プルーニングを実行する際にどこまでキャッシュを小さくするかを示す単位の最小数を記述します。プルーニングによりキャッシュにこの数の単位が含まれるとはかぎりませんが、これより少ない数になることはありません。別のunit-calculator( |
< |
オプション |
使用する単位換算カリキュレータのタイプを指定します。単位換算カリキュレータは、特定のオブジェクトのコスト(単位)の決定に使用されます。有効な値は次のとおりです。
この要素は、 |
< |
オプション |
unit-factor要素は、units、low-unitsおよびhigh-unitsの各プロパティの調整に使用する係数を指定します。たとえば、 たとえば、BINARY単位換算カリキュレータでは、係数1048576を使用してバイトをメガバイトに換算できます。 注意: この要素は、units、low-unitsおよびhigh-unitsの各プロパティのタイプを32ビット値から64ビット値に変更することを回避するためにのみ導入されたものであり、high-units要素が正の数値に設定されている場合にのみ使用されます。Coherenceの今後のリリースでは、この要素が削除される見込みです。 有効な値は正の整数です。デフォルト値は |
< |
オプション |
前回の更新からエントリが期限切れとなるまでの、キャッシュでエントリが保持される期間を指定します。期限切れになったキャッシュ内のエントリはクライアントからアクセス不能となり削除されます。期限切れエントリの読取りを試行すると、対象のエントリが構成済のキャッシュ・ストア(< この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、秒が単位として適用されます。値0は期限がないことを意味します。デフォルト値は 注意: expiry-delayのパラメータ ( |
オプション |
キャッシュの対象となるストアを指定します。指定しない場合、キャッシュ・データはメモリー内にのみ配置され、そのキャッシュに対して実行された操作のみを反映します。 |
|
|
オプション |
キャッシュが |
< |
オプション |
キャッシュ上で発生しているイベントの通知を受け取る |
使用場所: 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のサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
ニア・キャッシュのカスタム実装を指定します。カスタム実装では、 |
オプション |
初期化パラメータを指定します。これは、 |
|
< |
オプション |
キャッシュ上で発生しているイベントの通知を受け取る |
< |
必須 |
フロント層キャッシュの作成に使用する front-schemeのエビクション・ポリシーによって、ローカルにキャッシュされるエントリが定義されます。例: <front-scheme> <local-scheme> <eviction-policy>HYBRID</eviction-policy> <high-units>1000</high-units> </local-scheme> </front-scheme> |
< |
必須 |
バック層キャッシュの作成に使用する 例: <back-scheme> <distributed-scheme> <scheme-ref>default-distributed</scheme-ref> </distributed-scheme> </back-scheme> |
< |
オプション |
フロント層およびバック層の同期を保持するために使用される方針を指定します。詳細は、
デフォルト値は |
< |
オプション |
autostart要素は、キャッシュ・サーバー(つまり、 |
使用場所: external-scheme
、paged-external-scheme
、async-store-manager
説明
記憶域にメモリーマップ・ファイルを使用する外部ストアを構成します。
実装
このストア・マネージャは、com.tangosol.io.nio.MappedStoreManager
クラスによって実装されます。このクラスで作成されるBinaryStore
オブジェクトは、com.tangosol.io.nio.BinaryMapStore
のインスタンスです。
要素
表B-38は、nio-file-manager
要素で定義可能なサブ要素について説明しています。
表B-38 nio-file-managerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
ローカル・キャッシュのカスタム実装を指定します。カスタム実装では、com.tangosol.io.nio.MappedStoreManagerクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。 |
オプション |
初期化パラメータを指定します。これは、 |
|
< |
オプション |
バッファの初期サイズをメガバイト単位で指定します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、Mが係数として適用されます。有効な値は、1から |
< |
オプション |
バッファの最大サイズをバイト単位で指定します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、Mが係数として適用されます。有効な値は、1から |
< |
オプション |
このマネージャがファイルを格納するルート・ディレクトリのパス名を指定します。指定しない場合、または存在しないディレクトリを指定した場合には、デフォルトの場所にある一時ファイルが使用されます。 |
使用場所: external-scheme
、paged-external-scheme
、async-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のサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
ローカル・キャッシュのカスタム実装を指定します。カスタム実装では、 |
オプション |
初期化パラメータを指定します。これは、 |
|
< |
オプション |
バッファの初期サイズをバイト単位で指定します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、Mが係数として適用されます。有効な値は、1から |
< |
オプション |
バッファの最大サイズをバイト単位で指定します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、Mが係数として適用されます。有効な値は、1から |
使用場所: cachestore-scheme
、distributed-scheme
、remote-cache-scheme
説明
operation-bundling
要素は、特定のバンドル方針の構成情報を指定します。
バンドルとは、複数の個別の操作をいくつかの束(バンドル)にまとめるプロセスです。これは次のような場合に役立ちます。
複数のスレッド上に連続的な操作ストリームがパラレルに存在する場合。
各操作の(ネットワークまたはデータベースに関連した)待機時間が比較的長い場合。
待機時間を(コレクション・サイズに応じて)線形に増加させることなく、単一引数のかわりに引数のコレクションを取る、機能的に類似したバルク操作が存在する場合。
注意: 他のバンドル・アルゴリズム同様、リソース使用率とリクエストの平均待機時間との間には必然的なトレードオフが存在します。この機能を有効化することによって全体的なアプリケーションのパフォーマンスが向上するか低下するかは、各アプリケーションの使用パターンによって異なります。 |
実装の詳細は、com.tangosol.net.cache.AbstractBundler
を参照してください。
要素
表B-40は、operation-bundling
要素のサブ要素について説明しています。
使用場所: caching-schemes、near-scheme、versioned-near-scheme、overflow-scheme
オプティミスティック・スキームは、サービスを実行するすべてのクラスタ・ノードに自身の全データを完全にレプリケートするキャッシュを定義します(<service-name>
サブ要素を参照)。オプティミスティック・キャッシュの詳細は、「オプティミスティック・キャッシュ」を参照してください。
オプティミスティック・ロック
replicated-schemeやdistributed-schemeのキャッシュと異なり、オプティミスティック・キャッシュでは並行処理制御(ロック)がサポートされません。エントリに対する個々の操作はアトミックですが、キャッシュに格納された値がアトミック操作間で変更されない保証はありません。並行処理制御がないため、オプティミスティック・キャッシュでは非常に高速な書込み操作が実現されます。
キャッシュ記憶域(バッキング・マップ)
キャッシュの記憶域はbacking-map-schemeを使用して指定します(<backing-map-scheme>
サブ要素を参照)。たとえば、バッキング・マップにlocal-scheme
を使用するオプティミスティック・キャッシュでは、キャッシュ・エントリがメモリー内に格納されます。
要素
表B-41は、optimistic-scheme
要素で定義可能なサブ要素について説明しています。
表B-41 optimistic-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
<scheme-ref> |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
<service-name> |
オプション |
このスキームで作成されたキャッシュを管理するサービス名を指定します。サービスは、 |
オプション |
ユーザー定義型のシリアライズおよびデシリアライズに使用する |
|
< |
オプション |
キャッシュ上で発生しているイベントの通知を受け取る |
< |
オプション |
キャッシュ・サーバー内でのエントリの格納に使用するキャッシュのタイプを指定します。有効な値は次のとおりです。 キャッシュの一貫性を確保するため、オプティミスティック・キャッシュのバッキング・マップでは、キャッシュ・エントリのロードにリードスルー・パターンを使用しません。キャッシュ・サービスの外部でキャッシュアサイド・パターンを使用するか、クラスタ・キャッシュのリードスルーをサポートする |
|
オプション |
サービスおよび依存するスレッドをガードするために使用するガーディアンのタイムアウト値を指定します。指定のサービスに対して要素が指定されていない場合、デフォルトのガーディアンのタイムアウト( この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。 |
|
オプション |
動作が異常なサービス・スレッドをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。 有効な値は次のとおりです。
デフォルト値は |
|
オプション |
|
< |
オプション |
|
使用場所: acceptor-config
、initiator-config
説明
outgoing-message-handler
は、クライアントからクラスタへの接続の切断を検出するために使用される構成情報を指定します。コネクションレスのプロトコルを使用する接続イニシエータおよび接続アクセプタでは、この情報は、切断された接続に割り当てられていたリソースを検出および解放するために必要です。この情報は、接続指向のイニシエータおよびアクセプタでも、接続の切断を検出するための追加メカニズムとして使用できます。
要素
表B-42は、outgoing-message-handler要素で定義可能なサブ要素について説明しています。
表B-42 outgoing-message-handlerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
pingリクエストの間隔を指定します。pingリクエストは、接続の整合性を確保するために使用します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。値0はpingリクエストがないことを意味します。デフォルト値は0です。 |
< |
オプション |
pingリクエストへのレスポンスに対する最大待機時間を指定します。この時間を超過すると、基礎となる接続が使用不能と宣言されます。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は、 |
< |
オプション |
レスポンス・メッセージに対する最大待機時間を指定します。この時間を超過すると、基礎となる接続が使用不能と宣言されます。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は無限のタイムアウトです。 |
使用場所: caching-schemes
、distributed-scheme
、replicated-scheme
、optimistic-scheme
、read-write-backing-map-scheme
、versioned-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のサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
オーバーフロー・キャッシュのカスタム実装を指定します。カスタム実装は、 |
オプション |
初期化パラメータを指定します。これは、 |
|
< |
必須 |
フロント層キャッシュの作成に使用する front-schemeのエビクション・ポリシーによって、フロント層およびバック層に格納するエントリとアイテムが定義されます。例: <front-scheme> <local-scheme> <eviction-policy>HYBRID</eviction-policy> <high-units>1000</high-units> </local-scheme> </front-scheme> |
< |
必須 |
バック層キャッシュの作成に使用するcache-schemeを指定します。有効な値は次のとおりです。 例: <back-scheme> <external-scheme> <lh-file-manager/> </external-scheme> </back-scheme> |
< |
オプション |
キャッシュ・ミス情報を保持するcache-schemeを指定します。expiry-enabled( |
< |
オプション |
|
< |
オプション |
前回の更新からエントリが期限切れとなるまでの、キャッシュでエントリが保持される期間を指定します。期限切れになったキャッシュ内のエントリはクライアントからアクセス不能となり削除されます。 この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、秒が単位として適用されます。値0は期限がないことを意味します。デフォルト値は 注意: expiry-delayのパラメータ ( |
< |
オプション |
キャッシュ上で発生しているイベントの通知を受け取る |
使用場所: caching-schemes
、distributed-scheme
、replicated-scheme
、optimistic-scheme
、near-scheme
、versioned-near-scheme
、overflow-scheme
、read-write-backing-map-scheme
、versioned-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回のキーボード操作で実行されます。
プラッガブルなストレージ・マネージャ
外部スキームはプラッガブルなストア・マネージャを使用して、ページの作成と破棄、およびこれらのページ内のエントリへのアクセスを実行します。サポートされるストア・マネージャは次のとおりです。
async-store-manager
: 他のストア・マネージャの実装に対して非同期の書込み機能を提供するラッパー。
custom-store-manager
: ストア・マネージャのカスタム実装を定義します。
bdb-store-manager
: Berkeley Database JEを使用してオンディクス・キャッシュを実装します。
lh-file-manager
: Coherence LHを使用してオンディクス・データベース・キャッシュを実装します。
nio-file-manager
: NIOを使用してメモリーマップ・ファイル・ベースのキャッシュを実装します。
nio-memory-manager
: NIOを使用してJVMヒープ外キャッシュ(インメモリー・キャッシュ)を実装します。
永続性(長期記憶域)
外部ページ・キャッシュは、大きなデータ・セットの一時記憶域(たとえば、overflow-schemeのバック層)として使用されます。これらのキャッシュは長期記憶域(永続)としては使用できず、JVMの存続期間を超えて保持することはできません。クラスタ化の永続性は、distributed-schemeのread-write-backing-map-schemeを使用して構成します。非クラスタの永続キャッシュが必要な場合は、「永続性(長期記憶域)」を参照してください。
要素
表B-44は、paged-external-scheme
要素で定義可能なサブ要素について説明しています。
表B-44 paged-external-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
外部ページ・キャッシュのカスタム実装を指定します。カスタム実装では、com.tangosol.net.cache.SerializationPagedCacheクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。 |
オプション |
初期化パラメータを指定します。これは、 |
|
<listener> |
オプション |
キャッシュ上で発生しているイベントの通知を受け取る |
< |
必須 |
ページ・キャッシュの最大アクティブ・ページ数を指定します。有効な値は、2 - 3600の間の正の整数です。 |
< |
オプション |
ページ・キャッシュ内のページを現在のページとする期間を秒単位で指定します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、秒が単位として適用されます。有効な値は、5から604800秒(1週間)および0(失効なし)です。デフォルト値は0です。 |
オプション |
他のストレージ・マネージャに対して非同期のストレージ・マネージャ・ラッパーを使用するよう外部ページ・キャッシュを構成します。詳細は、「プラッガブルなストレージ・マネージャ」を参照してください。 |
|
オプション |
ストレージ・マネージャのカスタム実装を使用するよう外部ページ・キャッシュを構成します。 |
|
オプション |
キャッシュ記憶域にBerkeley Database JEのオンディスク・データベースを使用するよう外部ページ・キャッシュを構成します。 |
|
オプション |
キャッシュ記憶域にCoherence LHのオンディスク・データベースを使用するよう外部ページ・キャッシュを構成します。 |
|
オプション |
キャッシュ記憶域にメモリーマップ・ファイルを使用するよう外部ページ・キャッシュを構成します。 |
|
オプション |
キャッシュ記憶域にJVMヒープ外のメモリー領域を使用するよう外部ページ・キャッシュを構成します。 |
使用場所: distributed-scheme
説明
com.tangosol.net.partition.PartitionListener
インタフェースの実装を指定します。これにより、パーティション分散イベントの受信が可能になります。
要素
表B-45は、partition-listener
要素で定義可能なサブ要素について説明しています。
表B-45 partition-listenerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
|
使用場所: backing-map-scheme
(distributed-scheme
内でのみ)
説明
partitioned要素は、含まれるバッキング・マップがPartitionAwareBackingMap
かどうかを指定します(この要素は、distributed-scheme
の子であるbacking-map-scheme
でのみ考慮されます)。true
に設定した場合、backing-map-scheme
要素に含まれている特定のスキームは、PartitionAwareBackingMap
の個々のパーティションのバッキング・マップの構成に使用されます。それ以外の場合は、バッキング・マップ全体に対して使用されます。PartitionAwareBackingMap
インタフェースの具体的な実装は次のとおりです。
com.tangosol.net.partition.ObservableSplittingBackingCache
com.tangosol.net.partition.PartitionSplittingBackingCache
com.tangosol.net.partition.ReadWriteSplittingBackingMap
有効な値は、true
またはfalse
です。デフォルト値はfalse
です。
使用場所: distributed-scheme
説明
partitioned-quorum-policy-scheme
要素には、パーティション・キャッシュ・サービス用のクォーラム・ポリシー設定を記述します。
要素
表B-46は、partitioned-quorum-policy-scheme
要素で定義可能なサブ要素について説明しています。
表B-46 partitioned-quorum-policy-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
|
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
|
オプション |
パーティション分散を行うために必要な、パーティション・サービスの所有権が有効なメンバーの最小数を指定します。 この値は、負でない整数である必要があります。 |
|
オプション |
失われたプライマリ・パーティションをバックアップからリストアするために必要な、パーティション・サービスの所有権が有効なメンバーの最小数を指定します。 この値は、負でない整数である必要があります。 |
|
オプション |
読取りリクエストを処理するために必要な、キャッシュ・サービスの記憶域メンバーの最小数を指定します。読取りリクエストとは、キャッシュの状態や内容を変化させないリクエストです。 この値は、負でない整数である必要があります。 |
|
オプション |
書込みリクエストを処理するために必要な、キャッシュ・サービスの記憶域メンバーの最小数を指定します。書込みリクエストとは、キャッシュの状態や内容を変化させる可能性のあるリクエストです。 この値は、負でない整数である必要があります。 |
|
オプション |
カスタム・クォーラム・ポリシーを提供するクラスを指定します。この要素は、デフォルトのクォーラム要素または クラスは、 |
|
オプション |
カスタム・アクション・ポリシー・インスタンスを作成するためのファクトリ・クラスを指定します。この要素は、デフォルトのクォーラム要素または この要素は、 |
使用場所: ssl、identity-manager、trust-manager
説明
provider要素には、java.security.Provider
クラスを拡張するセキュリティ・プロバイダの構成情報を記述します。
要素
表B-47は、provider
要素で定義可能なサブ要素について説明しています。
表B-47 providerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
クラス名は、この要素を使用するか、 |
|
オプション |
この要素は、 |
|
オプション |
この要素は、 この要素は、 |
< |
オプション |
オブジェクトのインスタンス化を実行する、ファクトリ・クラスのstaticなファクトリ・メソッドの名前を指定します。 |
オプション |
プロバイダ実装のクラス初期化パラメータを記述します。 この要素は、 |
使用場所: proxy-scheme
説明
proxy-config
要素は、プロキシ・サービスによって管理されるクラスタ・サービス・プロキシの構成情報を指定します。サービス・プロキシは、リモート・クライアント(接続アクセプタを使用してクラスタに接続)と、リモート・クライアントが使用するクラスタ・サービスとの間を媒介します。
要素
表B-48は、proxy-config
要素で定義可能なサブ要素について説明しています。
表B-48 proxy-configのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
プロキシ・サービスによって管理されるキャッシュ・サービス・プロキシの構成情報を指定します。 |
|
オプション |
プロキシ・サービスによって管理される起動サービス・プロキシの構成情報を指定します。 |
使用場所: caching-schemes
説明
proxy-scheme
要素には、クラスタ・サービスの構成情報を記述します。これにより、Coherence*Extendクライアントは、クラスタへの接続が可能になり、クラスタに参加しなくてもクラスタ・サービスを使用できるようになります。
要素
表B-49は、proxy-scheme
要素で定義可能なサブ要素について説明しています。
表B-49 proxy-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
サービスの名前を指定します。 |
< |
オプション |
タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。注意: ポストされたタスクがまだ開始されていない場合は、ハングと見なされません。この属性は、スレッド・プールが使用されている( |
< |
オプション |
サービス・ワーカー・スレッド上で実行するリクエストのタイムアウト値をミリ秒単位で指定します。この属性は、スレッド・プールが使用されている( |
< |
オプション |
レスポンスが来るまでクライアントが待機する最大時間を指定します。この時間を超過すると、元のリクエストが破棄されます。リクエスト時間はクライアント側で測定されるもので、対応するサーバー・ノードに対して実行のためのリクエストが送信されてからの経過時間に次の時間を加えたものです。
有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、 |
< |
オプション |
サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。有効な値は、正の整数またはゼロです。デフォルト値は、 |
必須 |
接続アクセプタの構成を記述します。サービスでは、この接続アクセプタを使用してCoherence*Extendクライアントからの接続を受け入れ、クライアントがクラスタに参加していなくても、クラスタの提供するサービスを使用できるようにします。 |
|
オプション |
このサービスによって管理されるクラスタ・サービス・プロキシの構成を記述します。 |
|
< |
オプション |
|
|
オプション |
サービスおよび依存するスレッドをガードするために使用するガーディアンのタイムアウト値を指定します。指定のサービスに対して要素が指定されていない場合、デフォルトのガーディアンのタイムアウト( この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。 |
|
オプション |
動作が異常なサービス・スレッドをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。 有効な値は次のとおりです。
デフォルト値は |
|
オプション |
|
オプション |
プロキシ・サービス用のクォーラム・ポリシー設定を指定します。 |
使用場所: proxy-scheme
説明
proxy-quorum-policy-scheme
要素には、プロキシ・サービス用のクォーラム・ポリシー設定を記述します。
要素
表B-49は、proxy-quorum-policy-scheme
要素で定義可能なサブ要素について説明しています。
表B-50 proxy-quorum-policy-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
|
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
|
オプション |
クライアント接続を可能にするために必要な、プロキシ・サービスのメンバーの最小数を指定します。 この値は、負でない整数である必要があります。 |
|
オプション |
カスタム・クォーラム・ポリシーを提供するクラスを指定します。この要素は、 クラスは、 |
|
オプション |
カスタム・アクション・ポリシー・インスタンスを作成するためのファクトリ・クラスを指定します。この要素は、 この要素は、 |
使用場所: caching-schemes
、distributed-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のサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
読取り/書込みバッキング・マップのカスタム実装を指定します。カスタム実装では、 |
オプション |
初期化パラメータを指定します。これは、 |
|
< |
オプション |
キャッシュ上で発生しているイベントの通知を受け取る |
オプション |
キャッシュするストアを指定します。指定しない場合、キャッシュ・データは内部キャッシュにのみ配置され( |
|
< |
オプション |
[\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。 |
< |
必須 |
エントリのキャッシュに使用されるcache-schemeを指定します。有効な値は次のとおりです。 |
< |
オプション |
キャッシュ・ミス情報を保持するcache-schemeを指定します。miss-cacheは、キャッシュ・ストアに見つからなかったキーの追跡に使用されます。キャッシュ・ストアにキーがないことを事前に知っておくことで、一部の操作がより迅速に実行されます。処理に時間がかかる可能性のあるキャッシュ・ストアへの問合せを回避できるからです。サイズが制限されたスキームを使用すると、キャッシュされるキャッシュ・ミスの数を制御できます。値を指定しないと、キャッシュ・ミスのデータは保持されません。有効な値は次のとおりです。 |
< |
オプション |
読取り専用にするかどうかを指定します。 |
<write-delay> |
オプション |
ライトビハインド・キューでキャッシュ・ストアに対する非同期の書込みが遅延される時間間隔を指定します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、秒が単位として適用されます。0の場合、キャッシュ・ストアへの同期書込み(キューイングなし)が行われます。それ以外の場合、キャッシュ内の値が最後に更新されてから指定された期間だけ遅延して、書込みが非同期で実行されます。デフォルトは0です。 |
< |
オプション |
D' = (1.0 - F)*D。D = write-delayの間隔、F = write-batch-factor 概念的には、バッチ化された更新を実行する際に、write-behindスレッドでは次のロジックが使用されます。
この要素は、非同期の書込みが有効で(つまり、write-delay要素の値が0より大きくて)、 |
< |
オプション |
追加のアクションを実行できるライトビハインド・キューのサイズを指定します。この値は、対応するログ・メッセージの頻度を制御します。たとえば、この値が |
< |
オプション |
refresh-ahead-factor要素は、キャッシュ・エントリのソフト失効時間の計算に使用されます。ソフト失効時間は、実際の失効時間より前の時点になります。これより後では、エントリへのアクセス・リクエストによって、エントリに対する非同期のロード・リクエストがスケジュール化されます。この属性は、内部キャッシュが |
< |
オプション |
同期のキャッシュ・ストア操作でキャッチされた例外が、コール元のスレッドに再スローされるかどうかを指定します(ネットワークを介してリモート・メンバーに送信されることもあります)。この要素の値がfalseの場合、同期のキャッシュ・ストア操作でキャッチされた例外はローカルでログに記録され、内部キャッシュは更新されます。この値がtrueの場合、例外がコール元のスレッドに再スローされ、内部キャッシュは変更されません。この操作をトランザクション・コンテキスト内でコールした場合は、現在のトランザクションをロールバックするのと同様の操作になります。有効な値は、 |
使用場所: 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のサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
TCP/IPアクセプタがリスニングを行うアドレス(IPまたはDNS名)およびポートを指定します。複数の |
|
オプション |
TCP/IPアクセプタがリスニングを行うアドレス(IPまたはDNS名)およびポートを指定する
|
使用場所: cachestore-scheme
、caching-schemes
、near-scheme
説明
remote-cache-scheme
要素には、クラスタの外部からCoherence*Extendを使用してクラスタ・キャッシュを利用する際に必要な構成情報を記述します。
要素
表B-53は、remote-cache-scheme
要素で定義可能なサブ要素について説明しています。
表B-53 remote-cache-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
このスキームで作成されたキャッシュを管理するサービス名を指定します。 |
オプション |
バンドル方針の構成情報を指定します。 |
|
必須 |
クラスタへの接続を確立するためにサービスで使用される接続イニシエータの構成を記述します。 |
使用場所: caching-schemes
説明
remote-invocation-scheme
要素には、最初にクラスタに参加せずにクラスタ・コンテキスト内でタスクを実行する際に必要な構成情報を記述します。このスキームは、Coherence*Extendを使用してクラスタに接続します。
要素
表B-54は、remote-invocation-scheme
要素で定義可能なサブ要素について説明しています。
表B-54 remote-invocation-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
サービスの名前を指定します。 |
必須 |
クラスタへの接続を確立するためにサービスで使用される接続イニシエータの構成を記述します。 |
使用場所: caching-schemes
、near-scheme
、versioned-near-scheme
、overflow-scheme
、versioned-backing-map-scheme
説明
レプリケーション・スキームは、指定したサービスを実行する各クラスタ・ノードに、すべてのキャッシュ・エントリを完全にレプリケートするキャッシュを定義します。レプリケーション・キャッシュの詳細は、「レプリケーション・キャッシュ」を参照してください。
クラスタ化された並列処理制御
レプリケーション・キャッシュでは、クラスタ全体を対象とするキーベースのロック機能がサポートされるため、更新の欠落といった従来の問題を発生させることなく、クラスタ内のデータを変更できます。明示的ロックを行わずに実行された操作もすべてアトミックですが、キャッシュに格納された値がアトミック操作間で変更されない保証はありません。
キャッシュ記憶域(バッキング・マップ)
キャッシュの記憶域はbacking-map-schemeを使用して指定します(<backing-map>
サブ要素を参照)。たとえば、バッキング・マップにlocal-scheme
を使用するレプリケーション・キャッシュでは、キャッシュ・エントリがメモリー内に格納されます。
要素
表B-55は、replicated-scheme
要素で定義可能なサブ要素について説明しています。
表B-55 replicated-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
このスキームで作成されたキャッシュを管理するサービス名を指定します。サービスは、 |
オプション |
ユーザー定義型のシリアライズおよびデシリアライズに使用する |
|
< |
オプション |
キャッシュ上で発生しているイベントの通知を受け取る |
< |
オプション |
キャッシュ・サーバー内でのエントリの格納に使用するキャッシュのタイプを指定します。有効な値は次のとおりです。 キャッシュの一貫性を確保するため、レプリケーション・キャッシュのバッキング・マップでは、キャッシュ・エントリのロードにリードスルー・パターンを使用しません。キャッシュ・サービスの外部でキャッシュアサイド・パターンを使用するか、クラスタ・キャッシュのリードスルーをサポートする |
< |
オプション |
標準的なリースの継続時間をミリ秒単位で指定します。リースがこのミリ秒数を超過すると、ロックは自動的に解放されます。期限切れが発生しないリースを指定するには、この値をゼロに設定します。この設定の目的は、スタック・スレッドを原因とするデッドロックまたはブロックが発生しないようにすることです。最長の予想ロック継続時間より高い(たとえば、トランザクション・タイムアウトより高い)値を設定する必要があります。また、 |
< |
オプション |
リース所有権の精度を指定します。リリース2.3以降で使用できます。有効な値は次のとおりです。
値がthreadの場合、ロックはそのロックを取得したスレッドによって保持され、そのスレッドによってのみ解放されます。値がmemberの場合、ロックはクラスタ・ノードによって保持され、ロックを取得したクラスタ・ノード上で実行されるスレッドによって解放できます。デフォルト値は、 |
< |
オプション |
リースの問題を最新のロック・ホルダーに転送するかどうかを指定します。有効な値は、trueまたはfalseです。デフォルト値は、 |
|
オプション |
サービスおよび依存するスレッドをガードするために使用するガーディアンのタイムアウト値を指定します。指定のサービスに対して要素が指定されていない場合、デフォルトのガーディアンのタイムアウト( この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。 |
|
オプション |
動作が異常なサービス・スレッドをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。 有効な値は次のとおりです。
デフォルト値は |
|
オプション |
|
< |
オプション |
|
使用場所: acceptor-config、defaults、distributed-scheme、initiator-config、invocation-scheme、optimistic-scheme、replicated-scheme、transactional-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
要素で定義可能なサブ要素について説明しています。
使用場所: remote-addresses
説明
socket-address
要素は、TCP/IPアクセプタがリスニングを行うアドレスとポートを指定します。
要素
表B-57は、socket-address
要素で定義可能なサブ要素について説明しています。
表B-57 socket-addressのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
必須 |
TCP/IPアクセプタ・ソケットがリスニングを行うIPアドレス(IPまたはDNS名)を指定します。 |
< |
必須 |
TCP/IPアクセプタ・ソケットがリスニングを行うポートを指定します。有効な値は1から65535です。 |
使用場所: tcp-acceptor、tcp-initiator、defaults
説明
<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のサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
JVMのデフォルトのソケットおよびチャンネル実装のインスタンスを作成するソケット・プロバイダを指定します。 |
|
オプション |
SSLを使用するソケットおよびチャンネル実装を作成するソケット・プロバイダを指定します。 |
|
オプション |
|
使用場所: socket-provider
説明
<ssl>
要素には、SSLを使用するソケットおよびチャンネル実装を作成するソケット・プロバイダの構成情報を記述します。
要素
表B-59は、ssl
要素で定義可能なサブ要素について説明しています。
表B-59 sslのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
SSLソケット・プロバイダによって作成されたソケットおよびチャンネル実装が使用するプロトコルの名前を指定します。デフォルト値は |
|
オプション |
セキュリティ・プロバイダ・インスタンスの構成を指定します。 |
|
オプション |
|
オプション |
アイデンティティ・マネージャ・インスタンスを初期化するための構成情報を指定します。 |
|
オプション |
トラスト・マネージャ・インスタンスを初期化するための構成情報を指定します。 |
|
|
オプション |
|
使用場所: acceptor-config
説明
tcp-acceptor
要素は、Coherence*ExtendクライアントからのTCP/IPを介した接続を受け入れる接続アクセプタの構成情報を指定します。詳細および構成例については、『Oracle Coherenceクライアント・ガイド』を参照してください。
要素
表B-60は、tcp-acceptor
要素で定義可能なサブ要素について説明しています。
表B-60 tcp-acceptorのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
TCP/IPサーバー・ソケット(接続アクセプタによって開かれる)がバインドされるローカル・アドレス(IPまたはDNS名)およびポートを指定します。 |
|
オプション |
TCP/IPサーバー・ソケット(接続アクセプタによって開かれる)がリスニングを行うローカル・アドレス(IPまたはDNS名)およびポートを指定する
|
|
オプション |
|
|
|
オプション |
TCP/IPソケットを、現在使用しているアドレスまたは最近使用したアドレスにバインドできるかどうかを指定します。 OSの実装によっては結果の動作が大きく異なるため、この設定を使用することはお薦めしません。JVMでは一般に、対象のOSに対して安全とされる適切なデフォルト設定が選択されます。 有効な値は、 |
< |
オプション |
キープ・アライブ( |
< |
オプション |
TCP遅延(Nagleアルゴリズム)が、TCP/IPソケットで有効にされているかどうかを示します。有効な値は、 |
< |
オプション |
基礎となるTCP/IPソケット・ネットワーク受信バッファのサイズを構成します。受信バッファ・サイズを増やすと、大量の接続におけるネットワークI/Oのパフォーマンスが向上します。受信バッファ・サイズを減らすと、未処理の受信データが削減されます。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値はOSに依存します。 |
< |
オプション |
基礎となるTCP/IPソケット・ネットワーク送信バッファのサイズを構成します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値はOSに依存します。 |
< |
オプション |
TCP/IPサーバー・ソケットの未処理キューのサイズを構成します。有効値は正の整数です。デフォルト値はOSに依存します。 |
< |
オプション |
TCP/IPソケットで、指定したリンガー時間 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルトでは、リンガーは無効です。 |
オプション |
このTCP/IPアクセプタへの接続が許可される、TCP/IPイニシエータ・ホストのIPアドレス・コレクションです。 |
|
|
オプション |
不正なCoherence*Extendクライアント接続を検出して閉じるため、疑いのあるプロトコルを有効にするかどうかを指定します。疑いのあるプロトコルはデフォルトで有効です。 有効な値は、 |
|
オプション |
対応するクライアント接続が疑いありとマークされるまでの送信接続バックログ(バイト単位)を指定します。疑いのあるクライアント接続は、疑いがなくなるまで、またはメモリー不足からプロキシ・サーバーを保護するためにその接続が閉じられるまで監視されます。 この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[K|k|M|m|G|g|T|t]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値は10000000です。 |
|
オプション |
対応するクライアント接続が疑いありとマークされるまでの送信接続バックログ(メッセージ単位)を指定します。疑いのあるクライアント接続は、疑いがなくなるまで、またはメモリー不足からプロキシ・サーバーを保護するためにその接続が閉じられるまで監視されます。 デフォルト値は |
|
オプション |
その時点で疑いのあるクライアント接続の疑いが晴れたと見なされる送信接続バックログ(バイト単位)を指定します。 この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[K|k|M|m|G|g|T|t]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値は2000000です。 |
|
オプション |
その時点で疑いのあるクライアント接続の疑いが晴れたと見なされる送信接続バックログ(メッセージ単位)を指定します。 デフォルト値は |
|
オプション |
メモリ不足からプロキシ・サーバーを保護するため、その時点で対応するクライアント接続を閉じる必要のある送信接続バックログ(バイト単位)を指定します。 この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[K|k|M|m|G|g|T|t]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値は100000000です。 |
|
オプション |
メモリ不足からプロキシ・サーバーを保護するため、その時点で対応するクライアント接続を閉じる必要のある送信接続バックログ(メッセージ単位)を指定します。 デフォルト値は |
使用場所: initiator-config
説明
tcp-initiator
要素は、Coherence*Extendクライアントからリモート・クラスタへのTCP/IPを介した接続を有効にする接続イニシエータの構成情報を指定します。詳細および構成例については、『Oracle Coherenceクライアント・ガイド』を参照してください。
要素
表B-61は、tcp-initiator
要素で定義可能なサブ要素について説明しています。
表B-61 tcp-initiatorのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
オプション |
TCP/IPクライアント・ソケット(TCP/IPイニシエータによって開かれる)がバインドされるローカル・アドレス(IPまたはDNS名)およびポートを指定します。 |
|
必須 |
1つ以上のTCP/IP接続アクセプタのアドレスを記述します。TCP/IP接続イニシエータは、この情報を使用してリモート・クラスタとのTCP/IP接続を確立します。 |
|
オプション |
|
|
|
オプション |
TCP/IPソケットを、現在使用しているアドレスまたは最近使用したアドレスにバインドできるかどうかを指定します。 OSの実装によっては結果の動作が大きく異なるため、この設定を使用することはお薦めしません。JVMでは一般に、対象のOSに対して安全とされる適切なデフォルト設定が選択されます。 有効な値は、 |
< |
オプション |
キープ・アライブ( |
< |
オプション |
TCP遅延(Nagleアルゴリズム)が、TCP/IPソケットで有効にされているかどうかを示します。有効な値は、 |
< |
オプション |
基礎となるTCP/IPソケット・ネットワーク受信バッファのサイズを構成します。受信バッファ・サイズを増やすと、大量の接続におけるネットワークI/Oのパフォーマンスが向上します。受信バッファ・サイズを減らすと、未処理の受信データが削減されます。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値はOSに依存します。 |
< |
オプション |
基礎となるTCP/IPソケット・ネットワーク送信バッファのサイズを構成します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[K|k|M|m|G|g]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値はOSに依存します。 |
< |
オプション |
接続アクセプタへの接続を確立する際の最大待機時間を指定します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は無限のタイムアウトです。 |
< |
オプション |
TCP/IPソケットで、指定したリンガー時間 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルトでは、リンガーは無効です。 |
使用場所: caching-schemes、version-persistent-scheme、version-transient-scheme
説明
transactional-scheme
要素は、トランザクションを保証する専用の分散キャッシュであるトランザクション・キャッシュを定義します。複数のtransactional-scheme
要素を定義して様々な構成をサポートできます。アプリケーションは、次の3つのうちのいずれかの方法でトランザクション・キャッシュを使用します。
アプリケーションは、CacheFactory.getCache()
メソッドを使用して、トランザクション・キャッシュのインスタンスを取得します。この場合、キャッシュ操作を行う際、暗黙にトランザクションが保証されます。ただし、デフォルトのトランザクション動作を変更することはできません。
アプリケーションは、明示的にトランザクション・フレームワークAPIを使用して、トランザクション・キャッシュを使用するConnection
インスタンスを作成します。この場合、キャッシュ操作はトランザクション内で行われ、アプリケーションは必要に応じてデフォルトのトランザクション動作の変更をすべて制御できます。
Java EEアプリケーションは、Coherenceリソース・アダプタを使用して、トランザクション・キャッシュを使用するトランザクション・フレームワークAPIのConnection
インスタンスを作成します。この場合、キャッシュ操作は、分散(グローバル)トランザクションの一部として参加できるトランザクション内で実行されます。アプリケーションは、一部のデフォルト・トランザクション動作を変更できます。
要素
表B-62は、transactional-scheme
要素で定義可能なサブ要素について説明しています。
表B-62 transactional-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
このスキームで作成されたキャッシュを管理するサービス名を指定します。サービス名が指定されていない場合のデフォルト・サービス名は |
オプション |
ユーザー定義型のシリアライズおよびデシリアライズに使用する |
|
< |
オプション |
パーティション・キャッシュ・サービスで使用されるデーモン・スレッドの数を指定します。ゼロの場合、関連するタスクはすべて、サービス・スレッドで実行されます。有効な値は、正の整数またはゼロです。デフォルト値は、 thread-count値を指定すると、トランザクション記憶域およびリカバリに使用されるトランザクション・フレームワークの内部トランザクション・キャッシュのデフォルト動作が変更されます。 |
< |
オプション |
クラスタ・ノードをクラスタの記憶域として機能させる(つまり、パーティションを保持する)かどうかを指定します。無効化した場合、そのノードはキャッシュ・クライアントと見なされます。 通常、構成ファイル内ではこの値を未指定にしておき、システム・プロパティtangosol.coherence.distributed.localstorageを使用し、プロセスごとに設定します。これによって、キャッシュ・クライアントとキャッシュ・サーバーは、同じ構成ディスクリプタを使用できます。 有効な値は、 |
< |
オプション |
パーティション(分散)キャッシュを分割するパーティションの数を指定します。パーティション・キャッシュ・サービスを実行し、local-storage( パーティションの数は素数とし、いずれのパーティションのサイズも50MBを超えることのないように十分なパーティション数を指定する必要があります。 次に、サンプルのサービス記憶域サイズの適切なデフォルト設定を示します。 service storage partition-count _______________ ______________ 100M 257 1G 509 10G 2039 50G 4093 100G 8191 最初の1,000個の素数のリストについては、次のサイトを参照してください。 有効値は正の整数です。デフォルト値は、 |
|
オプション |
トランザクション記憶域のサイズを指定します。トランザクション記憶域のサイズに達すると、エビクション・ポリシーが適用され、記憶域から使用可能なエントリの25%が削除されます。 この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[K|k|M|m|G|g|T|t]?[B|b]? 前述の文字は(左から右へ)それぞれ、先行する10進数値に乗じる係数を示しています。
値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値は10MBです。 |
< |
オプション |
プライマリ・バケット分散のしきい値をキロバイト単位で指定します。パーティション・キャッシュ・サービスに新しいノードが結合する場合、またはサービスのメンバーのいずれかの結合が解除される場合、残りのノードによって、バケット所有権の再分散タスクが実行されます。このプロセスでは、所有権情報とともに既存のデータの均衡化が再実行されます。このパラメータでは、データ転送通信で優先されるメッセージ・サイズを示します。この値を低く設定すると、分散プロセスの所要時間は長くなりますが、このアクティビティ実行中のネットワーク帯域幅の使用量は軽減されます。有効な値は、ゼロより大きな整数です。デフォルト値は、 |
< |
オプション |
パーティション・キャッシュ・サービスのうち、各保存単位のバックアップ・データをキャッシュに保持するメンバーの数を指定します。この値が0になっていると、異常終了した場合にキャッシュ内のデータの一部が失われます。この値がNになっていると、即座に終了したクラスタ・ノードの数がN以内の場合、キャッシュ・データが保持されます。サイズMのパーティション・キャッシュを維持する場合、クラスタ内の合計メモリー使用量はクラスタ・ノードの数に依存するのではなく、M*(N+1)となります。推奨値は0または1です。デフォルト値は、 |
< |
オプション |
タスクが実行できる時間をミリ秒単位で指定します。この時間を超過すると、ハングしたと見なされます。注意: ポストされたタスクがまだ開始されていない場合は、ハングと見なされません。この属性は、スレッド・プールが使用されている( |
< |
オプション |
サービス・ワーカー・スレッド上で実行するリクエストのタイムアウト値をミリ秒単位で指定します。この属性は、スレッド・プールが使用されている( |
< |
オプション |
レスポンスが来るまでクライアントが待機する最大時間を指定します。この時間を超過すると、元のリクエストが破棄されます。リクエスト時間はクライアント側で測定されるもので、対応するサーバー・ノードに対して実行のためのリクエストが送信されてからの経過時間に次の時間を加えたものです。
有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、 |
|
オプション |
サービスおよび依存するスレッドをガードするために使用するガーディアンのタイムアウト値を指定します。指定のサービスに対して要素が指定されていない場合、デフォルトのガーディアンのタイムアウト( この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。 |
|
オプション |
動作が異常なサービス・スレッドをサービス・ガーディアンが正常に終了できないときに実行するアクションを指定します。 有効な値は次のとおりです。
デフォルト値は |
オプション |
パーティション・キャッシュ・サービス用のクォーラム・ポリシー設定を指定します。 |
|
< |
オプション |
この要素は、キャッシュ・サーバー(つまり、 |
使用場所: ssl
説明
<trust-manager>
要素には、javax.net.ssl.TrustManager
インスタンスを初期化するための構成情報を記述します。
トラスト・マネージャは、信頼の決定を行う際に使用されるトラスト・マテリアルを管理し、ピアが提示した資格証明を受け入れるかどうかを決定します。
有効なtrust-manager構成には、少なくとも1つの子要素が記述されます。
要素
表B-63は、trust-manager
要素で定義可能なサブ要素について説明しています。
表B-63 trust-managerのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
|
オプション |
トラスト・マネージャによって使用されるアルゴリズムを指定します。デフォルト値は |
|
オプション |
セキュリティ・プロバイダ・インスタンスの構成を指定します。 |
オプション |
キー・ストア実装の構成を指定します。 |
使用場所: versioned-backing-map-scheme
説明
version-persistent-scheme
は、クラスタ・キャッシュのオブジェクトのバージョニング情報を格納するキャッシュを定義します。指定したスキームのバッキング・マップでサイズ制限を指定すると、追跡するバージョン識別子の数を制御できます。
要素
表B-64は、version-persistent-scheme
要素で定義可能なサブ要素について説明しています。
表B-64 version-persistent-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
名前修飾子を指定します。この修飾子は、特定のキャッシュに関連付けられたバージョン・オブジェクトのキャッシュの作成に使用されます。この要素の値は、ベース・キャッシュ名に付加されます。有効な値は文字列です。デフォルト値は |
< |
必須 |
バージョン情報の保持に使用されるキャッシュのスキームを指定します。有効な値は次のとおりです。 |
使用場所: versioned-near-scheme
、versioned-backing-map-scheme
説明
version-transient-scheme
は、バージョニングされたニア・キャッシュで使用される、オブジェクトのバージョニング情報を格納するキャッシュを定義します。指定したスキームのバッキング・マップでサイズ制限を指定すると、追跡するバージョン識別子の数を制御できます。
要素
次の表は、version-
transient-scheme
要素で定義可能なサブ要素について説明しています。
表B-65 version-transient-schemeのサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
名前修飾子を指定します。この修飾子は、特定のキャッシュに関連付けられたバージョン・オブジェクトのキャッシュの作成に使用されます。この要素の値は、ベース・キャッシュ名に付加されます。有効な値は文字列です。デフォルト値は-versionです。たとえば、 |
< |
必須 |
バージョン情報の保持に使用されるキャッシュのスキームを指定します。有効な値は次のとおりです。 |
使用場所: caching-schemes
、distributed-scheme
、replicated-scheme
、optimistic-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のサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
バージョニングされているバッキング・マップのカスタム実装を指定します。カスタム実装では、 |
オプション |
初期化パラメータを指定します。これは、 |
|
< |
オプション |
キャッシュ上で発生しているイベントの通知を受け取る |
オプション |
キャッシュするストアを指定します。指定しない場合、キャッシュ・データは内部キャッシュにのみ配置され( |
|
< |
必須 |
エントリのキャッシュに使用されるcache-schemeを指定します。有効な値は次のとおりです。 |
< |
オプション |
キャッシュ・ミス情報を保持するcache-schemeを指定します。miss-cacheは、キャッシュ・ストアに見つからなかったキーの追跡に使用されます。キャッシュ・ストアにキーがないことを事前に知っておくことで、一部の操作がより迅速に実行されます。処理に時間がかかる可能性のあるキャッシュ・ストアへの問合せを回避できるからです。サイズが制限されたスキームを使用すると、キャッシュされるキャッシュ・ミスの数を制御できます。値を指定しないと、キャッシュ・ミスのデータは保持されません。有効な値は次のとおりです。 |
< |
オプション |
読取り専用にするかどうかを指定します。trueの場合、キャッシュはデータをキャッシュ・ストアからロードして読取り操作を行い、キャッシュが更新されたときにキャッシュ・ストアへの書込みは実行しません。有効な値は、 |
< |
オプション |
ライトビハインド・キューでキャッシュ・ストアに対する非同期の書込みが遅延される時間間隔を指定します。この要素の値は、次の形式で指定する必要があります。 [\d]+[[.][\d]+]?[MS|ms|S|s|M|m|H|h|D|d]? 前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
値に単位が含まれていない場合は、秒が単位として適用されます。0の場合、キャッシュ・ストアへの同期書込み(キューイングなし)が行われます。それ以外の場合、キャッシュ内の値が最後に更新されてから指定された秒数だけ遅延して、書込みが非同期で実行されます。デフォルトは0です。 |
< |
オプション |
write-batch-factor要素は、ライトビハインド・キュー・エントリのソフト熟成時間の計算に使用されます。キューのエントリは、ライトビハインド・キューにwrite-delay期間以上格納されると、書込み操作用に十分に熟成している(適切な書込み時である)と見なされます。ソフト熟成時間は、実際の熟成時間より前の時点になります。これより後では、エントリが(その他のすべての熟成エントリとソフト熟成エントリとともに) |
< |
オプション |
追加のアクションを実行できるライトビハインド・キューのサイズを指定します。この値は、対応するログ・メッセージの頻度を制御します。たとえば、この値が |
< |
オプション |
|
< |
オプション |
同期のキャッシュ・ストア操作でキャッチされた例外が、コール元のスレッドに再スローされるかどうかを指定します(ネットワークを介してリモート・メンバーに送信されることもあります)。この要素の値がfalseの場合、同期のキャッシュ・ストア操作でキャッチされた例外はローカルでログに記録され、内部キャッシュは更新されます。この値がtrueの場合、例外がコール元のスレッドに再スローされ、内部キャッシュは変更されません。この操作をトランザクション・コンテキスト内でコールした場合は、現在のトランザクションをロールバックするのと同様の操作になります。有効な値は、 |
オプション |
永続キャッシュ・ストア内のエントリのバージョン識別子を追跡するcache-schmeを指定します( |
|
オプション |
一時内部キャッシュ内のエントリのバージョン識別子を追跡するcache-schmeを指定します( |
|
< |
オプション |
バッキング・マップが、一時バージョン・キャッシュを最新の状態に維持する役割を果たすかどうかを指定します。無効化されている場合、バッキング・マップは他のパーティが認識しない操作(エントリの失効など)についてのみ、一時バージョン・キャッシュの管理を行います。これは、たとえば |
使用場所: 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のサブ要素
要素 | 必須/オプション | 説明 |
---|---|---|
< |
オプション |
スキームの名前を指定します。この名前は構成ファイル内で一意である必要があります。 |
< |
オプション |
継承元の別のスキーム名を指定します。詳細は、「スキームの継承の使用方法」を参照してください。 |
< |
オプション |
バージョニングされているニア・キャッシュのカスタム実装を指定します。指定されたクラスでは、 |
オプション |
初期化パラメータを指定します。これは、 |
|
< |
オプション |
キャッシュ上で発生しているイベントの通知を受け取る |
< |
必須 |
フロント層キャッシュの作成に使用する 例: <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> <distributed-scheme> <scheme-ref>default-distributed</scheme-ref> </distributed-scheme> </back-scheme> |
オプション |
キャッシュ・エントリのバージョニングに使用するスキームを指定します。これにより、フロント層とバック層の一貫性が保証されます。 |
|
< |
オプション |
autostart要素は、キャッシュ・サーバー(つまり、 |