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

前
 
次
 

B キャッシュ構成の要素

この付録では、キャッシュ構成デプロイメント・ディスクリプタの要素のリファレンスと、ディスクリプタの簡単な概要を示します。

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

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

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

キャッシュ構成デプロイメント・ディスクリプタ・スキーマはcoherence-cache-config.xsdファイルで定義します。これがcoherence-cache-config-base.xsdファイルをインポートし、これがさらにcoherence-config-base.xsdファイルをインポートします。これらのXSDファイルは、coherence.jarライブラリのルートおよび次のWeb URLにあります。

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

<cache-config>要素はキャッシュ構成ディスクリプタのルート要素であり、通常はXSDおよびCoherenceネームスペース・リファレンスと、coherence-cache-config.xsdファイルの場所が含まれます。例:

<?xml version='1.0'?>

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

注意:

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

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

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


要素リファレンス

表B-1は、キャッシュ構成デプロイメント・ディスクリプタのすべての非終端要素を示しています。

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

要素 使用場所

acceptor-config


proxy-scheme


address-provider


name-service-addressesremote-addressestcp-acceptor

async-store-manager


external-schemepaged-external-scheme

authorized-hosts


tcp-acceptor


back-scheme


near-schemeoverflow-scheme

backing-map-scheme


distributed-schemeoptimistic-schemereplicated-scheme

backup-storage


distributed-scheme


bdb-store-manager


external-schemepaged-external-scheme,、async-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-scheme,、async-store-manager

defaults


cache-config


distributed-scheme


caching-schemesnear-schemeoverflow-scheme

external-scheme


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

http-acceptor


acceptor-config


identity-manager


ssl


flashjournal-scheme


back-schemebacking-map-schemecaching-schemesinternal-cache-scheme

front-scheme


near-schemeoverflow-scheme

incoming-message-handler


acceptor-configinitiator-config

init-param


init-params


init-params


class-scheme


initiator-config


remote-cache-schemeremote-invocation-scheme

interceptor


interceptors


interceptors


cache-mappingdistributed-scheme

instance


serializersocket-providerservice-failure-policy

invocation-scheme


caching-schemes


key-associator


distributed-scheme


key-partitioning


distributed-scheme


key-store


identity-managertrust-manager

listener


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

local-address


http-acceptortcp-acceptortcp-initiator

local-scheme


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

memcached-acceptor


acceptor-config


name-service-addresses


tcp-initiator


near-scheme


caching-schemes


nio-file-manager


external-schemepaged-external-scheme,、async-store-manager

nio-memory-manager


external-schemepaged-external-scheme,、async-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-quorum-policy-scheme


distributed-scheme


provider


identity-managerssltrust-manager

proxy-config


proxy-scheme


proxy-scheme


caching-schemes


proxy-quorum-policy-scheme


proxy-scheme


ramjournal-scheme


back-schemebacking-map-schemecaching-schemesinternal-cache-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


name-service-addressesremote-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またはHTTP (REST用)接続アクセプタの構成情報を指定します。接続アクセプタはプロキシ・サービスで使用され、Coherence*Extendクライアントからクラスタへの接続を有効にして、クライアントがクラスタに参加していなくても、クラスタ・サービスを使用できるようにします。

要素

表B-2で、acceptor-config要素のサブ要素を説明します。

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

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

<http-acceptor>

オプション

リモートのRESTクライアントからのHTTPを介した接続を受け入れる接続アクセプタの構成情報を指定します。この要素は、<tcp-acceptor>または<memcached-acceptor>要素とあわせて使用することはできません。

<tcp-acceptor>

オプション

Coherence*ExtendクライアントからクラスタへのTCP/IPを介した接続を有効にする、接続アクセプタの構成情報を指定します。この要素は、<http-acceptor>または<memcached-acceptor>要素とあわせて使用することはできません。

<memcached-acceptor>

オプション

リモートのmemcachedクライアントからのTCP/IPを介した接続を受け入れる接続アクセプタの構成情報を指定します。この要素は、<tcp-acceptor>または<http-acceptor>要素とあわせて使用することはできません。

<incoming-message-handler>

オプション

クライアントからクラスタへの接続リソース使用量の規制に使用される構成情報を指定します。

<outgoing-message-handler>

オプション

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

<use-filters>

オプション

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

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

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

<connection-limit>

オプション

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


address-provider

使用場所: name-service-addressesremote-addressestcp-acceptormemcached-acceptor

説明

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

推奨する方法は、オペレーション・オーバーライド・ファイルに含まれているアドレス・プロバイダ定義を参照することです。この方法により、アプリケーション構成からデプロイメント構成が切り離されます。ただし、ソケット・アドレスも、インラインに構成でき、開発時にはソケット・アドレスが一般的です。参照可能なアドレス・プロバイダの定義の詳細は、「address-provider」を参照してください。

次の例では、TCP/IPアクセプタがバインドされるソケット・アドレスを含むアドレス・プロバイダ定義を参照します。

<tcp-acceptor>
   <address-provider>ap2</address-provider>
</tcp-acceptor>

次の例では、クラスタ上のTCP/IPアクセプタのソケット・アドレスを含むアドレス・プロバイダ定義を参照します。

<tcp-initiator>
   <remote-addresses>
      <address-provider>ap3</address-provider>
   </remote-addresses>
</tcp-initiator>

次の例では、クラスタ上のネーム・サービスTCP/IPアクセプタのソケット・アドレスを含むアドレス・プロバイダ定義を参照します。

<tcp-initiator>
   <name-service-addresses>
      <address-provider>ap4</address-provider>
   </name-service-addresses>
</tcp-initiator>

次の例では、TCP/IP memcachedアクセプタがバインドされるソケット・アドレスを含むアドレス・プロバイダ定義を参照します。

<memcached-acceptor>
   <address-provider>ap5</address-provider>
</memcached-acceptor>

要素

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

オプション

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

<socket-address>

オプション

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

アドレス・プロバイダ実装が<class-name>または<class-factory-name>要素を使用して定義されている場合、この要素は使用できません。


async-store-manager

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

説明

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

  • custom-store-manager: ストア・マネージャのカスタム実装を定義します。

  • bdb-store-manager: Berkeley Database JEを使用してオンディクス・キャッシュを実装します。

  • nio-file-manager: NIOを使用してメモリーマップ・ファイル・ベースのキャッシュを実装します。

  • nio-memory-manager: NIOを使用してJVMヒープ外キャッシュ(インメモリー・キャッシュ)を実装します。


    注意:

    NIOメモリー・マネージャの実装は非推奨です。現在の実装では、かわりにジャーナル・バイナリ・ストアを使用する必要があります。「エラスティック・データ機能を使用したデータの保存」を参照してください。

実装

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

要素

表B-4で、async-store-manager要素のサブ要素を説明します。

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

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

<class-name>

オプション

非同期ストア・マネージャのカスタム実装を指定します。カスタム実装では、com.tangosol.io.AsyncBinaryStoreManagerクラスを拡張し、完全に同一のpublicなコンストラクタのセットを宣言する必要があります。

<init-params>

オプション

カスタムasync-store-managerの実装で使用する初期化パラメータを指定します。

<bdb-store-manager>

オプション

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

<custom-store-manager>

オプション

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

<nio-file-manager>

オプション

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

<nio-memory-manager>

オプション

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

<async-limit>

オプション

非同期に書き込まれるキューに配置される最大バイト数を指定します。この値をゼロに設定すると、最大バイト数の実装デフォルトが使用されることを示します。この要素の値は、次の形式で指定する必要があります。

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

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

  • K(キロ、210)

  • M(メガ、220)

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


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>サブ要素内に任意の初期化パラメータを定義できます。


back-scheme

使用場所: near-schemeoverflow-scheme

説明

back-scheme要素は、複合キャッシュのバック層キャッシュを指定します。

要素

表B-6で、back-scheme要素のサブ要素を説明します。

表B-6 back-schemeのサブ要素

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

<distributed-scheme>

オプション

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

<optimistic-scheme>

オプション

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

<replicated-scheme>

オプション

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

<transactional-scheme>

オプション

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

<local-scheme>

オプション

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

<external-scheme>

オプション

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

<paged-external-scheme>

オプション

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

<class-scheme>

オプション

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

<flashjournal-scheme>

オプション

ジャーナルを使用してデータをフラッシュ・メモリーに格納するスキームを指定します。

<ramjournal-scheme>

オプション

ジャーナルを使用してデータをRAMメモリーに格納するスキームを指定します。

<remote-cache-scheme>

オプション

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


backing-map-scheme

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

説明

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

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


注意:

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

要素

表B-7で、backing-map-scheme要素のサブ要素を説明します。

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

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

<partitioned>

オプション

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

  • com.tangosol.net.partition.ObservableSplittingBackingCache

  • com.tangosol.net.partition.PartitionSplittingBackingCache

  • com.tangosol.net.partition.ReadWriteSplittingBackingMap

有効な値は、trueまたはfalseです。デフォルト値はfalseです。注意: RAMジャーナルおよびフラッシュ・ジャーナルを使用するバッキング・マップは常にパーティション化されています。

<local-scheme>

オプション

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

<external-scheme>

オプション

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

<paged-external-scheme>

オプション

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

<overflow-scheme>

オプション

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

<class-scheme>

オプション

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

<flashjournal-scheme>

オプション

ジャーナルを使用してデータをフラッシュ・メモリーに格納するスキームを指定します。

<ramjournal-scheme>

オプション

ジャーナルを使用してデータをRAMメモリーに格納するスキームを指定します。

<read-write-backing-map-scheme>

オプション

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


backup-storage

使用場所: distributed-scheme

説明

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

要素

表B-8で、backup-storage要素のサブ要素を説明します。

表B-8 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.distributed.backupです。

<initial-size>

オプション

バッファの初期サイズをバイト単位で指定します。クラス名は、<type>要素がoff-heapまたはfile-mappedに設定されている場合にのみ適用されます。バッファの初期サイズをバイト単位で指定します。この要素の値は、次の形式で指定する必要があります。

(\d)+[K|k|M|m|G|g|T|t]?[B|b]?

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

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

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

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

  • Tまたはt (テラ、240)

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

<maximum-size>

オプション

バッファの初期サイズをバイト単位で指定します。クラス名は、<type>要素がoff-heapまたはfile-mappedに設定されている場合にのみ適用されます。この要素の値は、次の形式で指定する必要があります。

(\d)+[K|k|M|m|G|g|T|t]?[B|b]?

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

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

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

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

  • Tまたはt (テラ、240)

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

<directory>

オプション

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

<class-name>

オプション

カスタム記憶域実装のクラス名を指定します。クラス名は、<type>要素がcustomに設定されている場合にのみ適用されます。

<scheme-name>

オプション

ConfigurableCacheFactoryのスキーム名を指定します。スキーム名は、<type>要素がschemeに設定されている場合にのみ適用されます。


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

実装

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

要素

表B-9で、bdb-store-manager要素のサブ要素を説明します。

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

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

<class-name>

オプション

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

<init-params>

オプション

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


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

また、カスタム実装で使用する初期化パラメータを指定する際にも使用されます。

<directory>

オプション

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

<store-name>

オプション

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

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


bundle-config

使用場所: operation-bundling

説明

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

要素

表B-10で、bundle-config要素のサブ要素を説明します。

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

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

<operation-name>

オプション

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

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

  • load"

  • store

  • erase

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

  • get

  • put

  • remove

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

<preferred-size>

オプション

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

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

<delay-millis>

オプション

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

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

<thread-threshold>

オプション

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

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

<auto-adjust>

オプション

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

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


cache-config

ルート要素

説明

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

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

要素

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

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

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

<scope-name>

オプション

<cache-config>要素内での<scope-name>要素の使用は非推奨になりました。かわりに、defaults要素内で<scope-name>要素を使用してください。

<defaults>

オプション

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

<interceptors>

オプション

イベントを処理する任意の数のイベント・インターセプタを指定します。<cache-config>要素の子として<interceptors>要素を指定すると、インターセプタのスコープがキャッシュ構成に設定され、インターセプタがConfigurableCacheFactoryライフサイクル・イベントなどのイベントを受信できるようになります。

<caching-scheme-mapping>

必須

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

<caching-schemes>

必須

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


cache-mapping

使用場所: caching-scheme-mapping

説明

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

要素

表B-12で、cache-mapping要素のサブ要素を説明します。

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

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

<cache-name>

必須

キャッシュ名または名前のパターンを指定します。名前は、キャッシュ・ファクトリ内で一意です。次のキャッシュ名パターンがサポートされています:

  • 完全一致。たとえば、MyCacheです。

  • ワイルドカードを使用した接頭辞の一致(prefix*)。たとえば、My*Myで始まるすべてのキャッシュ名が一致します。

  • ワイルドカードを使用した全一致(*)。すべてのキャッシュ名に一致します。

キャッシュ名は複数のキャッシュ・マッピングに一致する可能性があります。その場合、ワイルドカード一致よりも完全一致が優先されます。完全一致が指定されていない場合は、最後に一致したワイルドカード・パターン(ファイルで定義された順番に基づく)が選択されます。

<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に置換されます。

<interceptors>

オプション

特定のキャッシュのイベントを処理する任意の数のイベント・インターセプタを指定します。


cache-service-proxy

使用場所: proxy-config

説明

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

要素

表B-13で、cache-service-proxy要素のサブ要素を説明します。

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

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

<class-name>

オプション

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

<init-params>

オプション

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

<enabled>

オプション

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

<lock-enabled>

オプション

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

<read-only>

オプション

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


cachestore-scheme

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

説明

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

要素

表B-14で、cachestore-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<class-scheme>

オプション

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

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

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

  • com.tangosol.net.cache.BinaryEntryStore: CacheStoreに似ていますが、BinaryEntryオブジェクト上で稼働します。

<remote-cache-scheme>

オプション

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

<operation-bundling>

オプション

バンドリング戦略の構成情報を指定します。


caching-scheme-mapping

使用場所: cache-config

説明

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

要素

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

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

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

<cache-mapping>

必須

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


caching-schemes

使用場所: cache-config

説明

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

要素

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

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

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

<distributed-scheme>

オプション

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

<optimistic-scheme>

オプション

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

<replicated-scheme>

オプション

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

<transactional-scheme>

オプション

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

<local-scheme>

オプション

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

<external-scheme>

オプション

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

<paged-external-scheme>

オプション

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

<overflow-scheme>

オプション

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

<class-scheme>

オプション

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

<flashjournal-scheme>

オプション

データをフラッシュ・メモリーに格納するスキームを指定します。

<ramjournal-scheme>

オプション

データをRAMメモリーに格納するスキームを指定します。

<near-scheme>

オプション

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

<invocation-scheme>

オプション

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

<read-write-backing-map-scheme>

オプション

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

<remote-cache-scheme>

オプション

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

<remote-invocation-scheme>

オプション

Coherenceクラスタ外からCoherence*Extendを使用して起動できる起動スキームを定義します。

<proxy-scheme>

オプション

Coherence*Extendを使用してクライアントにリモート接続できるプロキシ・サービス・スキームを定義します。


class-scheme

使用場所: caching-schemeslocal-schemedistributed-schemereplicated-schemeoptimistic-schemenear-schemefront-schemeoverflow-schemeread-write-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-17で、class-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<class-name>

オプション

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

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

<class-factory-name>

オプション

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

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

<method-name>

オプション

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

<init-params>

オプション

一致するシグネチャを持つpublicなコンストラクタが含まれる実装によってアクセス可能な初期化パラメータを指定します。


custom-store-manager

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

説明

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

要素

表B-18で、custom-store-manager要素のサブ要素を説明します。

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

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

<class-name>

必須

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

<init-params>

オプション

カスタム・ストア・マネージャの実装で使用する初期化パラメータを指定します。


defaults

使用場所: cache-config

説明

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

要素

表B-19で、defaults要素のサブ要素を説明します。

表B-19 defaultsのサブ要素

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

<scope-name>

オプション

この構成のスコープ名を指定します。スコープ名は、キャッシュ・ファクトリによって生成されたすべてのサービスに(接頭辞として)追加されます。この名前は、複数のキャッシュ・ファクトリを使用する場合にサービスを分離するために使用されるため、異なる構成から意図しない同じような名前のサービスが参加しないようになります。

<serializer>

オプション

com.tangosol.io.Serializer実装のクラス構成情報を指定するか、またはオペレーション構成ファイルの<serializers要素内で定義されているシリアライザ・クラス構成を参照します。事前定義のシリアライザには、java(デフォルト)とpofの2つがあり、定義済のid属性名を使用して参照されています。例:

<serializer>pof</serializer>

<socket-provider>

オプション

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

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

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


distributed-scheme

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

フェイルオーバー

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

パーティションの再分散

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

要素

表B-20で、distributed-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<service-name>

オプション

この分散スキームから作成されたキャッシュを管理する分散キャッシュ・サービス・インスタンスの名前を指定します。分散キャッシュ・サービス定義は、tangosol-coherence.xmlファイルの<services>要素内で定義されすま。詳細は、「DistributedCacheサービスのパラメータ」を参照してください。分散スキームごとに、異なるパーティション・キャッシュ・サービス・インスタンスを使用して、別々のキャッシュを管理できます。名前が指定されていない場合のデフォルト名は、DistributedCacheです。

<service-priority>

オプション

サービス・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたservice-priority値です。詳細は、「DistributedCacheサービスのパラメータ」service-priorityパラメータを参照してください。

<event-dispatcher-priority>

オプション

各サービスのイベント・ディスパッチャ・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたevent-dispatcher-priority値です。詳細は、「DistributedCacheサービスのパラメータ」event-dispatcher-priorityパラメータを参照してください。

<serializer>

オプション

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

<reliable-transport>

オプション

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

  • datagram – UDPプロトコル

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

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

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

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

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

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

<compressor>

オプション

バックアップ更新をデルタ形式で圧縮するか、全体を送信するかを指定します。デルタ更新は、バックアップ・エントリの一部を表しており、プライマリ・エントリと同期させるには変更が必要です。デルタは、コンプレッサを使用して作成および適用します。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたcompressor値です。詳細は、「"DistributedCacheサービスのパラメータ」compressorパラメータを参照してください。有効な値は次のとおりです。

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

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

  • <instance> - com.tangosol.io.DeltaCompressorインタフェースを実装するクラスの構成です。

<thread-count>

オプション

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

<worker-priority>

オプション

ワーカー・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたworker-priority値です。詳細は、「DistributedCacheサービスのパラメータ」worker-priorityパラメータを参照してください。

<lease-granularity>

オプション

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

  • thread

  • member

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

<local-storage>

オプション

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

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

<partition-count>

オプション

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

有効な値は、1と32767の間の正の整数で、素数にする必要があります。素数のリストは、http://primes.utm.edu/lists/にあります。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された値です。「DistributedCacheサービスのパラメータ」のpartition-countパラメータを参照してください。

<transfer-threshold>

オプション

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

<backup-count>

オプション

パーティション・キャッシュ・サービスのうち、各保存単位のバックアップ・データをキャッシュに保持するメンバーの数を指定します。この値が0になっていると、異常終了した場合にキャッシュ内のデータの一部が失われます。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたbackup-count値です。詳細は、「DistributedCacheサービスのパラメータ」を参照してください。

<backup-count-after-writebehind>

オプション

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

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

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

<backup-storage>

オプション

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

<key-associator>

オプション

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

<key-partitioning>

オプション

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

<partition-assignment-strategy>

オプション

パーティション・サービスでパーティション分散を管理する際に使用する戦略を指定します。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたpartition-assignment-strategy値です。詳細は、「DistributedCacheサービスのパラメータ」partition-assignment-strategyパラメータを参照してください。

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

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

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

  • custom - com.tangosol.net.partition.PartitionAssignmentStrategyインタフェースを実装するクラス。カスタム戦略は、<instance>要素を使用して指定します。

<partition-listener>

オプション

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

<task-hung-threshold>

オプション

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

<task-timeout>

オプション

サービス・ワーカー・スレッド上で実行するリクエストのタイムアウト値をミリ秒単位で指定します。この属性は、スレッド・プールが使用されている(thread-count値が正の)場合にのみ適用され、PriorityTaskインタフェースを実装するエントリ・プロセッサ実装にのみ適用されます。ゼロを指定すると、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実装のクラス構成情報が提供されます。

<member-listener>

オプション

com.tangosol.net.MemberListenerインタフェースを実装するクラスの構成情報を指定します。実装には、publicなデフォルト・コンストラクタが必要です。クラスの定義に使用する要素の詳細は、「instance」のサブ要素を参照してください。

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

<operation-bundling>

オプション

バンドリング戦略の構成情報を指定します。

<backing-map-scheme>

オプション

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

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

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

<partitioned-quorum-policy-scheme>

オプション

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

<listener>

オプション

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

<autostart>

オプション

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

<interceptors>

オプション

特定の分散サービスのすべてのキャッシュのイベントを処理する任意の数のイベント・インターセプタを指定します。

<async-backup>

オプション

パーティション(分散)キャッシュ・サービスが、クライアントに同時に応答する際に、データを非同期にバックアップするかどうかを指定します。非同期バックアップは、多くの場合、クライアントのパフォーマンスを向上させるために使用されます。ただし、厳密なデータ整合性を必要とするアプリケーションは、そのデータが危険にさらされないように設計し、テストする必要があります。有効な値は、trueまたはfalseです。デフォルト値はfalseです。


external-scheme

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

説明

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

実装

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

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

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

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

  • <high-units>サブ要素に0以外の値が指定されている場合はSerializationCacheが使用されます。

  • これ以外の場合はSerializationMapが使用されます。

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

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

  • 他のストア・マネージャの実装に対して非同期の書込み機能を提供するラッパー

  • ストア・マネージャのカスタム実装定義が可能

  • オンディスク・キャッシュの実装にBerkeley Database JEを使用

  • メモリーマップ・ファイル・ベースのキャッシュの実装にNIOを使用

  • JVMヒープ外キャッシュ(インメモリー・キャッシュ)の実装にNIOを使用


    注意:

    NIOメモリー・マネージャの実装は非推奨です。現在の実装では、かわりにジャーナル・バイナリ・ストアを使用する必要があります。「エラスティック・データ機能を使用したデータの保存」を参照してください。

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

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


注意:

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

エントリの有効期限

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

永続性(長期記憶域)

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

要素

表B-21で、external-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<class-name>

オプション

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

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

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

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

  • com.tangosol.net.cache.CompactSerializationCache—圧縮されたon-heapフットプリント

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

<init-params>

オプション

カスタム外部キャッシュの実装で使用する初期化パラメータを指定します。

<async-store-manager>

オプション

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

<bdb-store-manager>

オプション

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

<custom-store-manager>

オプション

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

<nio-file-manager>

オプション

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

<nio-memory-manager>

オプション

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

<high-units>

オプション

キャッシュのサイズ制限を指定します。この値は、プルーニングが開始されるまでキャッシュに配置できる単位の最大数を表します。別のunit calculator(<unit-calculator>サブ要素を参照)によってオーバーライドされないかぎり、エントリは測定単位になります。この制限を超えると、キャッシュでプルーニング・プロセスが開始され、単位数がこの制限を下回るまで最低使用頻度のエントリが順番に削除されます。スキームのclass-name要素を使用すると、SerializationCacheにカスタム拡張を行って代替のエビクション・ポリシーを実装できます。有効な値は、0からInteger.MAX_VALUE (2147483647).の間の正の整数です。デフォルト値は0で、値に制限はありません。

注意: 値はデフォルトで約2GBに制限されます。より大きな値を指定するには、<unit-factor>要素を使用して、<high-units>値を乗算する係数を変更します。

<unit-calculator>

オプション

使用する単位換算カリキュレータのタイプを指定します。単位換算カリキュレータは、特定のオブジェクトのコスト(単位)の決定に使用されます。この要素は、<high-units>要素が正の数値に設定されている場合にのみ使用されます。有効な値は次のとおりです。

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

  • BINARY (デフォルト) - オブジェクトに対して、そのオブジェクトをキャッシュに配置するために必要なメモリーのバイト数に相当する加重を割り当てる単位換算カリキュレータ。このカリキュレータは、シリアライズされたバイナリ形式でデータをキャッシュするパーティション・キャッシュに使用します。詳細は、com.tangosol.net.cache.BinaryMemoryCalculatorを参照してください。

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

<unit-factor>

オプション

<low-units>および<high-units>設定の調整に使用する係数を指定します。たとえば、BINARY単位換算カリキュレータでは、係数1048576を使用してバイトをメガバイトに換算できます。

注意: この要素は、<low-units>および<high-units>の設定のタイプを32ビット値から64ビット値に変更することを回避するためにのみ導入されたものであり、<high-units>要素が正の数値に設定されている場合にのみ使用されます。

有効値は正の整数です。デフォルト値は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日間になります。

<listener>

オプション

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


flashjournal-scheme

使用場所: back-schemebacking-map-schemecaching-schemesinternal-cache-scheme

説明

flashjournal-scheme要素には、外部のブロックベースのファイル・ストア(フラッシュ)にデータを格納するスキームの構成情報を記述します。フラッシュ・ジャーナルの動作は、フラッシュ・ジャーナル・リソース・マネージャで制御します。フラッシュ・ジャーナルの動作の構成の詳細は、「flashjournal-manager」を参照してください。

このスキームでは、com.tangosol.net.cache.CompactSerializationCacheクラスをバッキング・マップ実装として使用し、com.tangosol.io.journal.JournalBinaryStoreを使用してバイナリ・キー値のペアのジャーナルへの格納と取得を行います。

要素

表B-22で、flashjournal-scheme要素のサブ要素を説明します。

表B-22 flashjournal-schemeのサブ要素

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<class-name>

オプション

簡単なシリアライズ・マップ・キャッシュのカスタム実装を指定します。カスタム実装では、com.tangosol.net.cache.CompactSerializationCacheクラスを拡張し、完全に同一のpublicなコンストラクタのセットをスーパークラスとして宣言する必要があります。

<init-params>

オプション

カスタム・シリアライズ・マップ・キャッシュの初期化パラメータを指定します。

<eviction-policy>

オプション

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

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

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

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

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

<high-units>

オプション

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

注意: 値はデフォルトで約2GBに制限されます。より大きな値を指定するには、<unit-factor>要素を使用して、<high-units>値を乗算する係数を変更します。

<low-units>

オプション

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

<unit-calculator>

オプション

使用する単位換算カリキュレータのタイプを指定します。単位換算カリキュレータは、特定のオブジェクトのコスト(単位)の決定に使用されます。この要素は、<high-units>要素が正の数値に設定されている場合にのみ使用されます。有効な値は次のとおりです。

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

  • BINARY (デフォルト) - オブジェクトに対して、そのオブジェクトをキャッシュに配置するために必要なメモリーのバイト数に相当する加重を割り当てる単位換算カリキュレータ。このカリキュレータは、シリアライズされたバイナリ形式でデータをキャッシュするパーティション・キャッシュに使用します。詳細は、com.tangosol.net.cache.BinaryMemoryCalculatorを参照してください。

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

<unit-factor>

オプション

<low-units>および<high-units>設定の調整に使用する係数を指定します。たとえば、BINARY単位換算カリキュレータでは、係数1048576を使用してバイトをメガバイトに換算できます。

注意: この要素は、<low-units>および<high-units>の設定のタイプを32ビット値から64ビット値に変更することを回避するためにのみ導入されたものであり、<high-units>要素が正の数値に設定されている場合にのみ使用されます。

有効値は正の整数です。デフォルト値は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日間になります。

<listener>

オプション

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


front-scheme

使用場所: near-schemeoverflow-scheme

説明

front-scheme要素は、複合キャッシュのフロント層キャッシュを指定します。

要素

表B-23で、front-scheme要素のサブ要素を説明します。

表B-23 front-schemeのサブ要素

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

<local-scheme>

オプション

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

<class-scheme>

オプション

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


http-acceptor

使用場所: acceptor-config

説明

http-acceptor要素は、HTTPを介したリモートのRESTクライアントからの接続のアクセプタを指定します。

要素

表B-24で、http-acceptor要素のサブ要素を説明します。

表B-24 http-acceptorのサブ要素

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

<class-name>

オプション

com.tangosol.coherence.rest.server.HttpServerインタフェースを実装するHTTPサーバー・クラスを指定します。HTTPサーバー・クラスはインバウンドHTTPリクエストを処理します。Coherence RESTは、com.tangosol.coherence.rest.server.DefaultHttpServer (Oracleの軽量HTTPサーバーでバッキング)とcom.tangosol.coherence.rest.server.GrizzlyHttpServer (Grizzlyでバッキング)の2つの即時利用可能な実装を備えています。値が指定されていない場合のデフォルト値はcom.tangosol.coherence.rest.server.DefaultHttpServerです。

<init-params>

オプション

HTTPサーバー・クラスのクラス初期化パラメータを記述します。

<socket-provider>

オプション

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

<local-address>

必須

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

<resource-config>

オプション

HTTPアクセプタがリソース・クラスおよびプロバイダ・クラスをロードする際に使用されるJerseyリソース構成クラスを指定します。

<auth-method>

オプション

HTTPサーバーの認証メカニズムを指定します。クライアントは、サーバーによって公開されるリソースへのアクセスを得るための前提条件として、構成済メカニズムを使用して認証を受ける必要があります。有効な値は次のとおりです。

  • basic - このメソッドは、クライアントにHTTP Basic認証を使用して認証を受けることを要求します。

  • cert - このメソッドは、クライアントにクライアント側SSL証明書ベースの認証を使用して認証を受けることを要求します。認証を受けるには、証明書をサーバーに渡す必要があります。SSLベース・ソケット・プロバイダを、<socket-provider>要素を使用して構成する必要があります。

  • cert+basic - このメソッドは、クライアントに、クライアント側SSL証明書とHTTP Basic認証の両方を使用して認証を受けることを要求します。

  • none (デフォルト) - このメソッドは、クライアントに認証を受けることを要求しません。


identity-manager

使用場所: ssl

説明

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

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

要素

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

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

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

<algorithm>

オプション

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

<provider>

オプション

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

<key-store>

オプション

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

<password>

必須

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


incoming-message-handler

使用場所: acceptor-configinitiator-config

説明

<incoming-message-handler>要素は、クライアントからクラスタへの接続リソース使用量の規制に使用される構成情報を含んでいます。接続イニシエータおよび接続アクセプタは、この情報を使用して過剰なリソースを使用する接続を事前に検知および解放します。

要素

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

表B-26 incoming-message-handlerのサブ要素

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

max-message-size

オプション

Coherence*Extend接続で送信されるメッセージのサイズ制限を指定します。この要素の値は、次の形式で指定する必要があります。

(\d)+[K|k|M|m|G|g|T|t]?[B|b]?

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

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

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

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

  • Tまたはt (テラ、240)

値に係数が含まれていない場合は、Kが係数として適用されます。有効な値は、0からInteger.MAX_VALUE (2147483647).の間の正の整数です。デフォルト値は0で、これはメッセージ・サイズに制限がないことを示します。


initiator-config

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

説明

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

要素

表B-27で、initiator-config要素のサブ要素を説明します。

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

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

<tcp-initiator>

オプション

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

<incoming-message-handler>

オプション

クライアントからクラスタへの接続リソース使用量の規制に使用される構成情報を指定します。

<outgoing-message-handler>

オプション

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

<use-filters>

オプション

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

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

<serializer>

オプション

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

<connect-timeout>

オプション

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

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

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


init-param

使用場所: init-params

説明

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

要素

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

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

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

<param-name>

オプション

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

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

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

<param-type>

オプション

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

  • java.lang.String (string)

  • java.lang.Boolean (boolean)

  • java.lang.Integer (int)

  • java.lang.Long (long)

  • java.lang.Double (double)

  • java.math.BigDecimal

  • java.io.File

  • java.sql.Date

  • java.sql.Time

  • java.sql.Timestamp

例:

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

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

<param-value>

必須

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

<description>

オプション

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


init-params

使用場所: class-schemecache-mapping

説明

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

要素

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

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

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

<init-param>

オプション

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


instance

使用場所: interceptorserializer、service-failure-policy、load-balancerおよびpartition-assignment-strategy

説明

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

要素

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

表B-30 instanceのサブ要素

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

<class-name>

オプション

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

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

<class-factory-name>

オプション

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

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

<method-name>

オプション

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

<init-params>

オプション

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


interceptor

使用場所: interceptors

説明

interceptor要素は、ライブ・イベントの処理を行うイベント・インターセプタと関連付けられる構成を定義します。イベント・インターセプタはcom.tangosol.net.events.AbstractConfigurableEventInterceptorクラスを拡張します。このベース・クラスは、イベント・インターセプタを特定のキャッシュまたはサービスに制限する機能を提供します。このベース・クラスは、@Interceptor注釈のサポートも提供します。これにより、実装においてイベント・タイプに基づいてイベントのサブセットに対して登録することおよびイベント・インターセプタ識別子およびイベントインターセプタの順序を構成することが可能になります。interceptor要素内でインターセプタの識別子および順序付けを指定すると、このベース・クラスの設定がオーバーライドされます。

要素

表B-31で、interceptor要素のサブ要素を説明します。

表B-31 interceptorのサブ要素

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

<name>

オプション

インターセプタの一意の識別子を指定します。

<order>

オプション

このインターセプタを、インターセプタの連鎖の最初のインターセプタにするかどうかを指定します。有効な値はLOWHIGHです。HIGHの値は、そのインターセプタを、インターセプタの連鎖の最初のものにすることを示します。LOWの値は、順序付けのプリファレンスはないことを示します。デフォルト値はLOWです。

<instance>

必須

インスタンス化するインターセプタ・クラスを指定します。そのインターセプタ・クラスは、AbstractConfigurableEventInterceptorクラスを拡張する必要があります。


interceptors

使用場所: cache-mappingおよびdistributed-scheme

説明

interceptors要素には、任意の数のイベント・インターセプタ定義が含まれます。

要素

表B-32で、interceptors要素のサブ要素を説明します。

表B-32 interceptorsのサブ要素

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

<interceptor>

オプション

イベント・インターセプタの実装を指定します。


invocation-scheme

使用場所: caching-schemes

説明

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

要素

表B-33で、invocation-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<service-name>

オプション

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

<service-priority>

オプション

サービス・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたservice-priority値です。「起動サービスのパラメータ」service-priorityパラメータを参照してください。

<event-dispatcher-priority>

オプション

各サービスのイベント・ディスパッチャ・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたevent-dispatcher-priority値です。「起動サービスのパラメータ」event-dispatcher-priorityパラメータを参照してください。

<serializer>

オプション

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

<reliable-transport>

オプション

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

  • datagram – UDPプロトコル

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

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

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

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

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

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

<thread-count>

オプション

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

<worker-priority>

オプション

ワーカー・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたworker-priority値です。「起動サービスのパラメータ」worker-priorityパラメータを参照してください。

<task-hung-threshold>

オプション

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

<task-timeout>

オプション

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

<request-timeout>

オプション

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

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

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

  • タスクの実行時間

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

有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたrequest-timeout値です。「起動サービスのパラメータ」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実装のクラス構成情報が提供されます。

<member-listener>

オプション

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

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

<autostart>

オプション

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


invocation-service-proxy

使用場所: proxy-config

説明

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

要素

表B-34で、invocation-service-proxy要素のサブ要素を説明します。

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

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

<class-name>

オプション

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

<init-params>

オプション

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

<enabled>

オプション

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


key-associator

使用場所: distributed-scheme

説明

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

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

要素

表B-35で、key-associator要素のサブ要素を説明します。

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

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

<class-name>

必須

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

<class-factory-name>

オプション

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

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

<method-name>

オプション

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

<init-params>

オプション

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


key-partitioning

使用場所: distributed-scheme

説明

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

要素

表B-36で、key-partitioning要素のサブ要素を説明します。

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

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

<class-name>

必須

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

<class-factory-name>

オプション

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

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

<method-name>

オプション

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

<init-params>

オプション

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


key-store

使用場所: identity-managertrust-manager

説明

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

要素

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

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

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

<url>

必須

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

<password>

オプション

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

<type>

オプション

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


listener

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

説明

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

要素

表B-38で、listener要素のサブ要素を説明します。

表B-38 listenerのサブ要素

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

<class-scheme>

必須

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


local-address

使用場所: http-acceptortcp-acceptortcp-initiator

説明

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

<tcp-acceptor>要素のローカル・アドレスは、Coherence*Extendクライアントからの接続を受け入れるプロキシ・サービスによって使用されるTCP/IPサーバー・ソケットを指定します。<http-acceptor>要素のローカル・アドレスは、RESTクライアントからの接続を受け入れるために使用されるHTTPサーバー・ソケットを指定します。次の例で、サーバー・ソケットは192.168.0.2:9099にバインドされます。

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

<tcp-initiator>要素のローカル・アドレスは、クラスタ上のプロキシ・サービスに接続するためにリモート・サービスによって使用されるTCP/IPクライアント・ソケットを指定します。次の例で、クライアント・ソケットは、192.168.0.1のポート9099にバインドされます。

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

注意:

TCP/IPアクセプタのソケット・アドレスもaddress-provider要素を使用して定義できます。詳細は、「address-provider」を参照してください。

要素

表B-65で、local-address要素のサブ要素を説明します。

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

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

<address>

オプション

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

<port>

オプション

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


local-scheme

使用場所: caching-schemesdistributed-schemereplicated-schemeoptimistic-schemenear-schemefront-schemeoverflow-schemeread-write-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-40で、local-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<class-name>

オプション

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

<service-name>

オプション

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

<init-params>

オプション

カスタム・ローカル・キャッシュの実装で使用する初期化パラメータを指定します。

<eviction-policy>

オプション

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

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

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

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

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

<high-units>

オプション

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

注意: 値はデフォルトで約2GBに制限されます。より大きな値を指定するには、<unit-factor>要素を使用して、<high-units>値を乗算する係数を変更します。

<low-units>

オプション

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

<unit-calculator>

オプション

使用する単位換算カリキュレータのタイプを指定します。単位換算カリキュレータは、特定のオブジェクトのコスト(単位)の決定に使用されます。この要素は、<high-units>要素が正の数値に設定されている場合にのみ使用されます。有効な値は次のとおりです。

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

  • BINARY (デフォルト) - オブジェクトに対して、そのオブジェクトをキャッシュに配置するために必要なメモリーのバイト数に相当する加重を割り当てる単位換算カリキュレータ。このカリキュレータは、シリアライズされたバイナリ形式でデータをキャッシュするパーティション・キャッシュに使用します。詳細は、com.tangosol.net.cache.BinaryMemoryCalculatorを参照してください。

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

<unit-factor>

オプション

<low-units>および<high-units>設定の調整に使用する係数を指定します。たとえば、BINARY単位換算カリキュレータでは、係数1048576を使用してバイトをメガバイトに換算できます。

注意: この要素は、<low-units>および<high-units>の設定のタイプを32ビット値から64ビット値に変更することを回避するためにのみ導入されたものであり、<high-units>要素が正の数値に設定されている場合にのみ使用されます。

有効値は正の整数です。デフォルト値は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の実装を指定します。


memcached-acceptor

使用場所: acceptor-config

説明

memcached-acceptor要素には、リモートmemcachedクライアントからのTCP/IPを介した接続を受け入れるアクセプタの構成情報が含まれています。アクセプタによって、memcachedクライアントはmemcachedバイナリ・プロトコルでCoherenceキャッシュを使用できるようになります。

要素

表B-41で、memcached-acceptor要素のサブ要素を説明します。

表B-41 memcached-acceptorのサブ要素

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

<cache-name>

必須

memcachedアクセプタに接続するmemcachedクライアントが使用するキャッシュを指定します。キャッシュ名は、キャッシュ・マッピングを使用して実際のキャッシュ・スキームに解決されます。詳細は、「cache-mapping」を参照してください。キャッシュ名は、パーティション・キャッシュ・スキームに解決される必要があります。

<interop-enabled>

オプション

値をキャッシュに格納する際にmemcachedアクセプタが、構成済キャッシュ・サービス・シリアライザをバイパスできるかどうかを指定します。これは、Coherence*Extendとmemcachedクライアントでデータを共有する場合にのみ必要です。memcachedクライアントがオブジェクトをbyte[]に変換するためにPOFシリアライザのようにCoherenceシリアライザを使用し、キャッシュ・サービスも同じシリアライザを使用していることが前提です。有効な値は、trueまたはfalseです。デフォルト値はfalseです。

<memcached-auth-method>

オプション

memcachedアクセプタの認証メカニズムを指定します。クライアントは、サーバーによって公開されるリソースへのアクセスを得るため、構成済メカニズムを使用して認証を受けている必要があります。有効な値は、plain (SASL PLAIN)およびnoneです。デフォルト値はnoneです。

<socket-provider>

オプション

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

<address-provider>

必須

TCP/IPサーバー・ソケットがバインドされるローカル・アドレス(IPまたはDNS名およびポート)またはプログラムでソケット・アドレスを提供するcom.tangosol.net.AddressProviderインタフェースの実装のいずれかを指定します。address-provider要素では、ソケット・アドレス参照もサポートされています。


name-service-addresses

使用場所: tcp-initiator

説明

name-service-addresses要素には、1つ以上のネーム・サービスTCP/IPアクセプタのアドレス(IPまたはDNS名およびポート)を記述します。TCP/IPイニシエータは、この情報を使用してリモート・クラスタとの接続を確立します。TCP/IPイニシエータは、記載されたアドレスをすべて試すか、接続が確立されるまで、アドレスへの接続をランダムに試行します。詳細および構成例については、『Oracle Coherenceリモート・クライアントの開発』を参照してください。

要素

表B-42で、name-service-addresses要素のサブ要素を説明します。

表B-42 name-service-addressesのサブ要素

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

<socket-address>

オプション

ネーム・サービスTCP/IPアクセプタがリスニングを行うアドレス(IPまたはDNS名およびポート)を指定します。<socket-address>要素は複数定義できます。

<address-provider>

オプション

ネーム・サービスTCP/IPアクセプタがリスニングを行うアドレス(IPまたはDNS名およびポート)またはそのアドレスを提供するcom.tangosol.net.AddressProviderの実装の構成を指定します。address-provider要素では、ソケット・アドレス参照もサポートされています。

<name-services-addresses>要素には、<socket-address>要素または<address-provider>要素のいずれかを含めることができますが、両方を含めることはできません。


near-scheme

使用場所: caching-schemes

説明

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

実装

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

フロント層の無効化

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

要素

表B-43で、near-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<class-name>

オプション

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

<init-params>

オプション

カスタム・ニア・キャッシュの実装用の初期化パラメータを指定します。

<front-scheme>

必須

フロント層キャッシュとして使用するキャッシュを指定します。

<back-scheme>

必須

フロント層キャッシュとして使用するキャッシュを指定します。

<invalidation-strategy>

オプション

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

  • auto (デフォルト) - この戦略は、present戦略とまったく同じです。

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

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

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

  • logical - ニア・キャッシュに対して、統合削除でないすべてのバッキング・マップ・イベントをリスニングするよう指示します。統合削除イベントは、エビクションまたは期限切れの結果として出力されることがあります。この無効化戦略では、バッキング・マップから統合的に削除されたキャッシュ・エントリをフロント・マップに含めることができます。その後にバッキング・マップにこれらのエントリを再挿入すると、フロント・マップの対応するエントリは無効化されます。

<listener>

オプション

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

<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-44で、nio-file-manager要素のサブ要素を説明します。

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

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

<class-name>

オプション

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

<init-params>

オプション

カスタムnio-file-managerの実装で使用する初期化パラメータを指定します。

<initial-size>

オプション

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

(\d)+[K|k|M|m|G|g|T|t]?[B|b]?

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

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

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

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

  • Tまたはt (テラ、240)

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

<maximum-size>

オプション

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

(\d)+[K|k|M|m|G|g|T|t]?[B|b]?

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

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

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

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

  • Tまたはt (テラ、240)

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

<directory>

オプション

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


nio-memory-manager

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

説明


注意:

NIOメモリー・マネージャの実装は非推奨です。現在の実装では、かわりにジャーナル・バイナリ・ストアを使用する必要があります。「エラスティック・データ機能を使用したデータの保存」を参照してください。

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


注意:

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

実装

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

要素

表B-45で、nio-memory-manager要素のサブ要素を説明します。

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

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

<class-name>

オプション

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

<init-params>

オプション

カスタムnio-memory-managerの実装で使用する初期化パラメータを指定します。

<initial-size>

オプション

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

(\d)+[K|k|M|m|G|g|T|t]?[B|b]?

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

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

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

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

  • Tまたはt (テラ、240)

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

<maximum-size>

オプション

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

(\d)+[K|k|M|m|G|g|T|t]?[B|b]?

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

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

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

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

  • Tまたはt (テラ、240)

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


operation-bundling

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

説明

operation-bundling要素は、特定のバンドリング戦略の構成情報を指定します。

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

  • 複数のスレッド上に連続的な操作ストリームがパラレルに存在する場合。

  • 各操作の(ネットワークまたはデータベースに関連した)待機時間が比較的長い場合。

  • 待機時間を(コレクション・サイズに応じて)線形に増加させることなく、単一引数のかわりに引数のコレクションを取る、機能的に類似したバルク操作が存在する場合。


    注意:

    • 他のバンドリング・アルゴリズム同様、リソース使用率とリクエストの平均待機時間との間には必然的なトレードオフが存在します。この機能を有効化することによって全体的なアプリケーションのパフォーマンスが向上するか低下するかは、各アプリケーションの使用パターンによって異なります。

    • 操作バンドリングは、キャッシュ・ストアの操作に影響します。操作バンドリングを構成すると、熟成エントリが1つのみの場合であっても、CacheStore.storeAll()メソッドが常にコールされます。


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

要素

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

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

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

<bundle-config>

必須

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


optimistic-scheme

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

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

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

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

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

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

要素

表B-47で、optimistic-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<service-name>

オプション

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

<service-priority>

オプション

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

<event-dispatcher-priority>

オプション

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

<serializer>

オプション

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

<reliable-transport>

オプション

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

  • datagram – UDPプロトコル

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

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

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

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

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

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

<request-timeout>

オプション

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

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

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

  • タスクの実行時間

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

有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された値です。詳細は、「ReplicatedCacheサービスのパラメータ」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実装のクラス構成情報が提供されます。

<member-listener>

オプション

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

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

<backing-map-scheme>

オプション

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

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

<listener>

オプション

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

<autostart>

オプション

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


outgoing-message-handler

使用場所: acceptor-configinitiator-config

説明

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

要素

表B-48で、outgoing-message-handler要素のサブ要素を説明します。

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

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

<max-message-size>

オプション

Coherence*Extend接続で送信されるメッセージのサイズ制限を指定します。この要素の値は、次の形式で指定する必要があります。

(\d)+[K|k|M|m|G|g|T|t]?[B|b]?

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

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

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

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

  • Tまたはt (テラ、240)

値に係数が含まれていない場合は、Kが係数として適用されます。有効な値は、0からInteger.MAX_VALUE (2147483647).の間の正の整数です。デフォルト値は0で、これはメッセージ・サイズに制限がないことを示します。

<request-timeout>

オプション

レスポンス・メッセージがくるまでクライアントが待機する最大時間を指定します。この時間を超過すると、リクエストが破棄されます。<heartbeat-timeout>値に達するまで接続は閉じません。

注意: プロキシはExtendクライアントにリクエストを送信しないため、プロキシ・サービス・アクセプタはこの要素を使用しません。

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

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

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


overflow-scheme

使用場所: caching-schemesdistributed-schemereplicated-schemeoptimistic-schemeread-write-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-49で、overflow-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<class-name>

オプション

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

<init-params>

オプション

カスタム・オーバーフロー・キャッシュの実装で使用する初期化パラメータを指定します。

<front-scheme>

必須

フロント層キャッシュとして使用するキャッシュを指定します。

<back-scheme>

必須

バック層キャッシュの作成に使用する cache-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日間になります。

<autostart>

オプション

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

<listener>

オプション

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


paged-external-scheme

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

説明

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

実装

このスキームは、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を使用してオンディクス・キャッシュを実装します。

  • nio-file-manager: NIOを使用してメモリーマップ・ファイル・ベースのキャッシュを実装します。

  • nio-memory-manager: NIOを使用してJVMヒープ外キャッシュ(インメモリー・キャッシュ)を実装します。


    注意:

    NIOメモリー・マネージャの実装は非推奨です。現在の実装では、かわりにジャーナル・バイナリ・ストアを使用する必要があります。「エラスティック・データ機能を使用したデータの保存」を参照してください。

永続性(長期記憶域)

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

要素

表B-50で、paged-external-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<class-name>

オプション

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

<init-params>

オプション

カスタム外部ページ・キャッシュの実装で使用する初期化パラメータを指定します。

<async-store-manager>

オプション

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

<bdb-store-manager>

オプション

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

<custom-store-manager>

オプション

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

<nio-file-manager>

オプション

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

<nio-memory-manager>

オプション

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

<page-limit>

オプション

キャッシュが管理する最大ページ数を指定します。この数を超えると、古いページは破棄されます。有効な値は、ゼロまたは2 - 3600の間の正の整数です。デフォルト値は0です。

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

<listener>

オプション

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


partition-listener

使用場所: distributed-scheme

説明

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

要素

表B-51で、partition-listener要素のサブ要素を説明します。

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

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

<class-name>

必須

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

<class-factory-name>

オプション

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

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

<method-name>

オプション

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

<init-params>

オプション

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


partitioned-quorum-policy-scheme

使用場所: distributed-scheme

説明

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

要素

表B-52で、partitioned-quorum-policy-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<distribution-quorum>

オプション

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

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

<restore-quorum>

オプション

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

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

<read-quorum>

オプション

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

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

<write-quorum>

オプション

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

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

<class-name>

オプション

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

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

<class-factory-name>

オプション

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

この要素は、<method-name>要素と一緒に使用されます。アクション・ポリシーは、com.tangosol.net.ActionPolicyインタフェースを実装する必要があります。

<method-name>

オプション

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

<init-params>

オプション

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


provider

使用場所: sslidentity-managertrust-manager

説明

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

要素

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

表B-53 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-54で、proxy-config要素のサブ要素を説明します。

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

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

<cache-service-proxy>

オプション

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

<invocation-service-proxy>

オプション

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


proxy-scheme

使用場所: caching-schemes

説明

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

要素

表B-55で、proxy-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<service-name>

オプション

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

<service-priority>

オプション

サービス・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は10です。デフォルト値は、tangosol-coherence.xmlディスクリプタのservice-priorityパラメータに指定された値です。詳細は、「プロキシ・サービスのパラメータ」を参照してください。

<event-dispatcher-priority>

オプション

各サービスのイベント・ディスパッチャ・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は、tangosol-coherence.xmlディスクリプタのevent-dispatcher-priorityパラメータに指定された値です。詳細は、「プロキシ・サービスのパラメータ」を参照してください。

<reliable-transport>

オプション

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

  • datagram – UDPプロトコル

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

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

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

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

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

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

<thread-count>

オプション

プロキシ・サービスで使用されるデーモン・スレッドの数を指定します。正確なスレッド数を含むスレッド・プールを作成する値を指定します。プロキシ・サービス・スレッドは、アプリケーションのコールのかわりに操作を実行します。したがって、スレッド数を明示的に設定する場合は、値は同時操作と同じ数に設定します。

注意: デフォルトのプロキシ・サービス構成は、プロキシ・サービスの負荷に基づいて自動的にスレッド数を調整する動的スレッド・プールを使用します。一般に、動的スレッド・プーリングの使用がお薦めです。動的スレッド・プーリングを使用する場合は、この要素を使用しないでください。動的スレッド・プールのしきい値を調整するには、thread-count-maxおよびthread-count-min要素を使用します。詳細は、「プロキシ・サービス・パラメータ」を参照してください。

スレッド・プールを無効化してすべてのタスクがプロキシ・サービス・スレッドで実行されるよう強制するには、この要素を使用せずに、thread-count-maxおよびthread-count-minパラメータを0に設定します。一般に、この構成の使用はお薦めしません。

<thread-count-max>

オプション

動的スレッド・プールで許容されるデーモン・スレッドの最大数を指定します。この要素は、<thread-count>要素が使用されていない場合にのみ有効です。有効な値は、正の整数または0です。この要素および<thread-count-min>要素の両方に0を指定すると、デーモン・スレッドは作成されず、すべてのクライアント・リクエストはプロキシ・サービス・スレッドで処理されます。デフォルト値は、tangosol-coherence.xmlディスクリプタのthread-count-maxパラメータに指定された値です。詳細は、「プロキシ・サービスのパラメータ」を参照してください。

<thread-count-min>

オプション

動的スレッド・プールで許容される(および最初に作成される)デーモン・スレッドの最小数を指定します。この要素は、<thread-count>要素が使用されていない場合にのみ有効です。有効な値は、正の整数または0です。この要素および<thread-count-max>要素の両方に0を指定すると、デーモン・スレッドは作成されず、すべてのクライアント・リクエストはプロキシ・サービス・スレッドで処理されます。デフォルト値は、tangosol-coherence.xmlディスクリプタのthread-count-minパラメータに指定された値です。詳細は、「プロキシ・サービスのパラメータ」を参照してください。

<worker-priority>

オプション

ワーカー・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は、tangosol-coherence.xmlディスクリプタのworker-priorityパラメータに指定された値です。詳細は、「プロキシ・サービスのパラメータ」を参照してください。

<task-hung-threshold>

オプション

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

<task-timeout>

オプション

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

<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実装のクラス構成情報が提供されます。

<member-listener>

オプション

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

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

<acceptor-config>

必須

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

<proxy-config>

オプション

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

<load-balancer>

オプション

プロキシ・サービスで一連のクラスタ・プロキシ・サービス・メンバーにクライアント接続を分散する際に使用されるプラガブルな戦略を指定します。有効な値は次のとおりです。

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

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

  • カスタム・クラス - <instance>のサブ要素を使用して、com.tangosol.net.proxy.ProxyServiceLoadBalancerインタフェースを実装するクラスの構成情報が提供されます。

<proxy-quorum-policy-scheme>

オプション

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

<autostart>

オプション

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


proxy-quorum-policy-scheme

使用場所: proxy-scheme

説明

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

要素

表B-55で、proxy-quorum-policy-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<connect-quorum>

オプション

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

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

<class-name>

オプション

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

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

<class-factory-name>

オプション

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

この要素は、<method-name>要素と一緒に使用されます。アクション・ポリシーは、com.tangosol.net.ActionPolicyインタフェースを実装する必要があります。

<method-name>

オプション

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

<init-params>

オプション

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


ramjournal-scheme

使用場所: back-schemebacking-map-schemecaching-schemesinternal-cache-scheme

説明

ramjournal-scheme要素には、バッファ(ジャーナル・ファイル)にインメモリーでデータを格納するスキームの構成情報を記述します。RAMジャーナルの動作は、RAMジャーナル・リソース・マネージャで制御します。RAMジャーナルの動作の構成の詳細は、「ramjournal-manager」を参照してください。

このスキームでは、com.tangosol.net.cache.CompactSerializationClassクラスをバッキング・マップ実装として使用し、com.tangosol.io.journal.JournalBinaryStoreを使用してバイナリ・キー値のペアのジャーナルへの格納と取得を行います。

要素

表B-57で、ramjournal-scheme要素のサブ要素を説明します。

表B-57 ramjournal-schemeのサブ要素

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<class-name>

オプション

簡単なシリアライズ・マップ・キャッシュのカスタム実装を指定します。カスタム実装では、com.tangosol.net.cache.CompactSerializationCacheクラスを拡張し、完全に同一のpublicなコンストラクタのセットをスーパークラスとして宣言する必要があります。

<init-params>

オプション

カスタム・シリアライズ・マップ・キャッシュの初期化パラメータを指定します。

<eviction-policy>

オプション

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

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

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

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

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

<high-units>

オプション

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

注意: 値はデフォルトで約2GBに制限されます。より大きな値を指定するには、<unit-factor>要素を使用して、<high-units>値を乗算する係数を変更します。

<low-units>

オプション

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

<unit-calculator>

オプション

使用する単位換算カリキュレータのタイプを指定します。単位換算カリキュレータは、特定のオブジェクトのコスト(単位)の決定に使用されます。この要素は、<high-units>要素が正の数値に設定されている場合にのみ使用されます。有効な値は次のとおりです。

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

  • BINARY (デフォルト) - オブジェクトに対して、そのオブジェクトをキャッシュに配置するために必要なメモリーのバイト数に相当する加重を割り当てる単位換算カリキュレータ。このカリキュレータは、シリアライズされたバイナリ形式でデータをキャッシュするパーティション・キャッシュに使用します。詳細は、com.tangosol.net.cache.BinaryMemoryCalculatorを参照してください。

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

<unit-factor>

オプション

<low-units>および<high-units>設定の調整に使用する係数を指定します。たとえば、BINARY単位換算カリキュレータでは、係数1048576を使用してバイトをメガバイトに換算できます。

注意: この要素は、<low-units>および<high-units>の設定のタイプを32ビット値から64ビット値に変更することを回避するためにのみ導入されたものであり、<high-units>要素が正の数値に設定されている場合にのみ使用されます。

有効値は正の整数です。デフォルト値は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日間になります。

<listener>

オプション

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


read-write-backing-map-scheme

使用場所: caching-schemesdistributed-scheme

説明

read-write-backing-map-schemeは、永続ストアのサイズ制限されたキャッシュを提供するバッキング・マップを定義します。詳細は、第15章「データ・ソースのキャッシュ」を参照してください。

実装

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

外部ストアのキャッシュ

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

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

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

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

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

要素

表B-58で、read-write-backing-map-scheme要素のサブ要素を説明します。

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

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<class-name>

オプション

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

<init-params>

オプション

カスタム読取り/書込みバッキング・マップの実装で使用する初期化パラメータを指定します。

<internal-cache-scheme>

必須

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

<write-max-batch-size>

オプション

1回のstoreAll操作で書き込むエントリの最大数を指定します。有効な値は、正の整数またはゼロです。デフォルト値は128個のエントリです。ライトビハインドが無効な場合、この値は無効です。

<miss-cache-scheme>

オプション

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

<cachestore-scheme>

オプション

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

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

<write-delay-seconds>

オプション

ライトビハインド・キューに関して、キャッシュ・ストアへの非同期書込みの遅延時間を秒数で指定します。0の場合、キャッシュ・ストアへの同期書込み(キューイングなし)が行われます。それ以外の場合、キャッシュ内の値が最後に更新されてから指定された秒数だけ遅延して、書込みが非同期で実行されます。

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

<write-batch-factor>

オプション

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

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

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

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

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

  3. 次に、スレッドではstore()(熟成エントリが1つのみの場合)またはstoreAll()(熟成/ソフト熟成エントリが複数存在する場合)を使用して、熟成およびソフト熟成のすべてのエントリを書き込みます。注意: 操作バンドリング(<operation-bundling>)が構成されている場合は、熟成エントリが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失効間隔の割合で表します。ゼロの場合、スケジュール先行リフレッシュは無効になります。1.0の場合、get操作によって非同期のリロードがただちにトリガーされます。有効な値は、1.0以下の正のダブルになります。デフォルト値は0です。

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

<rollback-cachestore-failures>

オプション

同期のキャッシュ・ストア操作でキャッチされた例外が、コール元のスレッドに再スローされるかどうかを指定します(ネットワークを介してリモート・メンバーに送信されることもあります)。有効な値は、trueまたはfalseです。この要素の値がfalseの場合、同期のキャッシュ・ストア操作でキャッチされた例外はローカルでログに記録され、内部キャッシュは更新されます。この値がtrueの場合、例外がコール元のスレッドに再スローされ、内部キャッシュは変更されません。この操作をトランザクション・コンテキスト内でコールした場合は、現在のトランザクションをロールバックするのと同様の操作になります。デフォルト値はtrueです。

<listener>

オプション

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


remote-addresses

使用場所: tcp-initiator

説明

remote-addresses要素には、1つ以上のTCP/IPアクセプタのアドレス(IPまたはDNS名とポート)を記述します。TCP/IPイニシエータは、この情報を使用してリモート・クラスタのプロキシ・サービスとの接続を確立します。TCP/IPアクセプタは、proxy-scheme要素内で構成されます。TCP/IPイニシエータは、記載されたアドレスをすべて試すか、接続が確立されるまで、アドレスへの接続をランダムに試行します。詳細および構成例については、『Oracle Coherenceリモート・クライアントの開発』を参照してください。


注意:

name-service-addresses要素は、リモート・クラスタ上のプロキシ・サービスとの接続を確立するためにも使用できます。詳細は、「name-service-addresses」を参照してください。

次の構成例は、イニシエータに対して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-59で、remote-addresses要素のサブ要素を説明します。

表B-59 remote-addressesのサブ要素

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

<socket-address>

オプション

TCP/IPアクセプタがリスニングを行うアドレス(IPまたはDNS名およびポート)を指定します。複数の<socket-address>要素を<remote-addresses>要素内で使用できます。

<address-provider>

オプション

TCP/IPアクセプタがリスニングを行うアドレス(IPまたはDNS名およびポート)またはそのアドレスを提供するcom.tangosol.net.AddressProviderの実装の構成を指定します。address-provider要素では、ソケット・アドレス参照もサポートされています。

<remote-addresses>要素には、<socket-address>要素または<address-provider>要素のいずれかを含めることができますが、両方を含めることはできません。


remote-cache-scheme

使用場所: cachestore-schemecaching-schemesnear-scheme

説明

remote-cache-scheme要素には、クラスタの外部からCoherence*Extendを使用してクラスタ化キャッシュを利用する際に必要な構成情報を記述します。

要素

表B-60で、remote-cache-scheme要素のサブ要素を説明します。

表B-60 remote-cache-schemeのサブ要素

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<service-name>

オプション

このスキームで作成されたキャッシュを管理するサービス名を指定します。

<proxy-service-name>

オプション

このリモート・サービスの接続先のプロキシ・サービス名を指定します。この要素は、このリモート・サービスがネーム・サービスを使用してプロキシ・サービスを検索する場合にのみ使用します。ネーム・サービスの構成の詳細は、「name-service-addresses」を参照してください。

この値は、プロキシ・サービスの<service-name>値に一致している必要があります。この要素は、このリモート・サービスの<service-name>値がプロキシ・サービスの<service-name>値に一致している場合は省略できます。プロキシ・サービスの定義の詳細は、「proxy-scheme」を参照してください。

<operation-bundling>

オプション

バンドリング戦略の構成情報を指定します。

<initiator-config>

必須

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

<defer-key-association-check>

オプション

キー・アソシエーションの処理を、拡張クライアントによって行うか、クラスタ側まで遅延するかを指定します。有効な値は、truefalseです。falseはキー・アソシエーションの処理を拡張クライアントによって行うことを示します。この値をtrueに設定する場合、.NETクライアントおよびC++クライアントには、クラスタ・キャッシュ・サーバー上のキー・クラスのパラレルJava実装を含める必要があります。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された値です。詳細は、「RemoteCacheサービスのパラメータ」を参照してください。

<listener>

オプション

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


remote-invocation-scheme

使用場所: caching-schemes

説明

remote-invocation-scheme要素には、最初にクラスタに参加せずにクラスタ内でタスクを実行する際に必要な構成情報を記述します。このスキームは、Coherence*Extendを使用してクラスタに接続します。

要素

表B-61で、remote-invocation-scheme要素のサブ要素を説明します。

表B-61 remote-invocation-schemeのサブ要素

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<service-name>

オプション

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

<proxy-service-name>

オプション

このリモート・サービスの接続先のプロキシ・サービス名を指定します。この要素は、このリモート・サービスがネーム・サービスを使用してプロキシ・サービスを検索する場合にのみ使用します。ネーム・サービスの構成の詳細は、「name-service-addresses」を参照してください。

この値は、プロキシ・サービスの<service-name>値に一致している必要があります。この要素は、このリモート・サービスの<service-name>値がプロキシ・サービスの<service-name>値に一致している場合は省略できます。プロキシ・サービスの定義の詳細は、「proxy-scheme」を参照してください。

<initiator-config>

必須

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


replicated-scheme

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

説明

レプリケート・スキームは、指定したサービスを実行する各クラスタ・ノードに、すべてのキャッシュ・エントリを完全にレプリケートするキャッシュを定義します。レプリケート・キャッシュの詳細は、「レプリケート・キャッシュの理解」を参照してください。

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

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

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

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

要素

表B-62で、replicated-scheme要素のサブ要素を説明します。

表B-62 replicated-schemeのサブ要素

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<service-name>

オプション

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

<service-priority>

オプション

サービス・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたservice-priority値です。詳細は、「ReplicatedCacheサービスのパラメータ」を参照してください。

<event-dispatcher-priority>

オプション

各サービスのイベント・ディスパッチャ・スレッドの優先度を指定します。有効な値は1から10の範囲で、10が最も高い優先度です。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたevent-dispatcher-priority値です。詳細は、「ReplicatedCacheサービスのパラメータ」を参照してください。

<serializer>

オプション

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

<reliable-transport>

オプション

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

  • datagram – UDPプロトコル

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

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

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

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

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

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

<standard-lease-milliseconds>

オプション

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

<lease-granularity>

オプション

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

  • thread

  • member

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

<request-timeout>

オプション

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

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

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

  • タスクの実行時間

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

有効な値は、正の整数またはゼロです(ゼロの場合は、デフォルト・タイムアウトがないことを示します)。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定された値です。詳細は、「ReplicatedCacheサービスのパラメータ」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実装のクラス構成情報が提供されます。

<member-listener>

オプション

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

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

<backing-map-scheme>

オプション

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

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

<listener>

オプション

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

<autostart>

オプション

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


resource-config

使用場所: http-acceptor

説明

resource-config要素には、com.sun.jersey.api.core.ResourceConfigクラスを拡張するクラスの構成情報を記述します。このインスタンスは、HTTPアクセプタが、指定されたコンテキスト・パスにマップされたCoherence RESTアプリケーション用のリソース・クラスおよびプロバイダ・クラスをロードする際に使用されます。複数のリソース構成クラスを構成して、別々のコンテキスト・パスにマップできます。

要素

表B-63で、resource-config要素のサブ要素を説明します。

表B-63 resource-configのサブ要素

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

<context-path>

オプション

RESTアプリケーションのルートURIパスを指定します。パスの先頭の文字は/である必要があります。デフォルト値は/です。

<instance>

オプション

com.sun.jersey.api.core.ResourceConfigクラスを拡張するクラスの構成情報を記述します。デフォルトのインスタンスは、com.tangosol.coherence.rest.server.DefaultResourceConfigクラスです。


serializer

使用場所: acceptor-configdefaultsdistributed-schemeinitiator-configinvocation-schemeoptimistic-schemereplicated-schemetransactional-scheme

説明

serializer要素には、com.tangosol.io.Serializer実装のクラス構成情報を記述します。

serializer要素は、シリアライザ構成への参照またはシリアライザのフル構成のいずれかを受け入れます。ベスト・プラクティスは、オペレーション構成ファイルで定義されている構成を参照する方法です。オペレーション構成ファイルには、Java用(デフォルト)とPOF用の2つのシリアライザ・クラス構成が含まれています。「serializer」を参照してください。

次の例では、オペレーション構成ファイル内の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-64で、serializer要素のサブ要素を説明します。

表B-64 serializerのサブ要素

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

<instance>

オプション

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


socket-address

使用場所: address-providerremote-addresses

説明

socket-address要素は、TCP/IPアクセプタがリスニングを行うアドレスとポートを指定します。

要素

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

表B-65 socket-addressのサブ要素

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

<address>

必須

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

<port>

必須

TCP/IPアクセプタ・ソケットがリスニングを行うポートを指定します。有効な値は1から65535です。


socket-provider

使用場所: tcp-acceptortcp-initiatordefaultssslmemcached-acceptor

説明

<socket-provider>要素には、ソケットおよびチャンネル・ファクトリの構成情報を記述します。<tcp-acceptor>要素および<tcp-initiator>要素内で構成されるソケット・プロバイダは、Coherence*Extendで使用されます。<http-acceptor>要素内で構成されたソケット・プロバイダは、Coherence RESTによって使用されます。<memcached-acceptor>要素内で構成されたソケット・プロバイダは、memcachedクライアントによって使用されます。TCMPのソケット・プロバイダは、オペレーション・オーバーライドにおいて、<unicast-listener>要素内で構成されます。

<socket-provider>要素は、ソケット・プロバイダ構成への参照またはソケット・プロバイダのフル構成のいずれかを受け入れます。ベスト・プラクティスは、オペレーション構成ファイルで定義されている構成を参照する方法です。「socket-provider」を参照してください。使用可能なソケット・プロバイダは、system (デフォルト)、ssltcpおよびsdpです。ソケット・プロバイダ構成は、id属性名を使用して参照されます。次の例は、事前定義のSSLソケット・プロバイダ構成を参照します。

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

事前構成済オーバーライド値はtangosol.coherence.socketproviderです。

要素

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

表B-66 socket-providerのサブ要素

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

<system>

オプション

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

<ssl>

オプション

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

<tcp>

オプション

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

<sdp>

オプション

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


ssl

使用場所: socket-provider

説明

<ssl>要素には、SSLを使用するソケットおよびチャンネル実装を作成するソケット・プロバイダの構成情報を記述します。

要素

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

表B-67 sslのサブ要素

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

<protocol>

オプション

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

<provider>

オプション

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

<executor>

オプション

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

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

<identity-manager>

オプション

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

<trust-manager>

オプション

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

<hostname-verifier>

オプション

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

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

<socket-provider>

オプション

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


tcp-acceptor

使用場所: acceptor-config

説明

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

要素

表B-68で、tcp-acceptor要素のサブ要素を説明します。

表B-68 tcp-acceptorのサブ要素

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

<socket-provider>

オプション

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

<local-address>

オプション

TCP/IPサーバー・ソケット(接続アクセプタによって開かれる)がバインドされるローカル・アドレス(IPまたはDNS名およびポート)を指定します。

<address-provider>

オプション

TCP/IPサーバー・ソケットがバインドされるローカル・アドレス(IPまたはDNS名およびポート)またはプログラムでソケット・アドレスを提供するcom.tangosol.net.AddressProviderインタフェースの実装のいずれかを指定します。address-provider要素では、ソケット・アドレス参照もサポートされています。

<tcp-acceptor>要素には、<local-address>要素または<address-provider>要素のいずれかを含めることができますが、両方を含めることはできません。

<reuse-address>

オプション

TCP/IPソケットを、現在使用しているアドレスまたは最近使用したアドレスにバインドできるかどうかを指定します。

オペレーティング・システムの実装によって結果の動作が大きく異なるため、この設定は非推奨です。JVMでは一般に、ターゲットのオペレーティング・システムに対して安全とされる適切なデフォルト設定が選択されます。

有効な値は、truefalseです。デフォルト値はオペレーティング・システムによって異なります。

<keep-alive-enabled>

オプション

SO_KEEPALIVEオプションが、TCP/IPソケットで有効にされているかどうかを示します。SO_KEEPALIVEオプションは、アイドル・ソケットを検出し、ソケットを閉じるかどうかを決定します。有効な値は、truefalseです。デフォルト値はtrueです。

<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が係数として適用されます。デフォルト値は、オペレーティング・システムに依存します。

<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が係数として適用されます。デフォルト値は、オペレーティング・システムに依存します。

<listen-backlog>

オプション

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

<linger-timeout>

オプション

TCP/IPソケットのSO_LINGERオプションの値を指定します。SO_LINGERオプションは、ソケットを強制的に閉じるまでの待機時間を制御します。この要素の値は、次の形式で指定する必要があります。

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は-1であり、これにより遅延タイムアウトは無効化されます。遅延タイムアウトは、この値がゼロよりも大きい場合にのみ設定されます。

<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(キロ、210)

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

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

  • Tまたはt (テラ、240)

値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値は10000000です。

<suspect-buffer-length>

オプション

対応するクライアント接続が疑いありとマークされるまでの送信接続バックログ(メッセージ単位)を指定します。疑いのあるクライアント接続は、疑いがなくなるまで、またはメモリー不足からプロキシ・サーバーを保護するためにその接続が閉じられるまでモニターされます。デフォルト値は10000です。

<nominal-buffer-size>

オプション

その時点で疑いのあるクライアント接続の疑いが晴れたと見なされる送信接続バックログ(バイト単位)を指定します。

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

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

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

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

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

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

  • Tまたはt (テラ、240)

値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値は2000000です。

<nominal-buffer-length>

オプション

その時点で疑いのあるクライアント接続の疑いが晴れたと見なされる送信接続バックログ(メッセージ単位)を指定します。デフォルト値は2000です。

<limit-buffer-size>

オプション

メモリー不足からプロキシ・サーバーを保護するため、その時点で対応するクライアント接続を閉じる必要のある送信接続バックログ(バイト単位)を指定します。

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

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

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

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

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

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

  • Tまたはt (テラ、240)

値に係数が含まれていない場合は、1が係数として適用されます。デフォルト値は100000000です。

<limit-buffer-length>

オプション

メモリー不足からプロキシ・サーバーを保護するため、その時点で対応するクライアント接続を閉じる必要のある送信接続バックログ(メッセージ単位)を指定します。デフォルト値は60000です。


tcp-initiator

使用場所: initiator-config

説明

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

要素

表B-69で、tcp-initiator要素のサブ要素を説明します。

表B-69 tcp-initiatorのサブ要素

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

<socket-provider>

オプション

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

<local-address>

オプション

TCP/IPクライアント・ソケット(TCP/IPイニシエータによって開かれる)がバインドされるローカル・アドレス(IPまたはDNS名およびポート)を指定します。

<name-service-addresses>

オプション

1つ以上のネーム・サービスTCP/IPアクセプタのアドレス(IPまたはDNS名およびポート)を記述します。TCP/IP接続イニシエータは、この情報を使用してリモート・クラスタとの接続を確立します。

この要素は、リモート・アドレスの構成にremote-addresses要素が使用されている場合は使用できません。

<remote-addresses>

オプション

1つ以上のTCP/IP接続アクセプタのアドレス(IPまたはDNS名およびポート)を記述します。TCP/IP接続イニシエータは、この情報を使用してリモート・クラスタとの接続を確立します。

この要素は、name-service-addresses要素が使用されている場合は使用できません。

<reuse-address>

オプション

TCP/IPソケットを、現在使用しているアドレスまたは最近使用したアドレスにバインドできるかどうかを指定します。

オペレーティング・システムの実装によって結果の動作が大きく異なるため、この設定は非推奨です。JVMでは一般に、ターゲットのオペレーティング・システムに対して安全とされる適切なデフォルト設定が選択されます。

有効な値は、truefalseです。デフォルト値はオペレーティング・システムによって異なります。

<keep-alive-enabled>

オプション

SO_KEEPALIVEオプションが、TCP/IPソケットで有効にされているかどうかを示します。SO_KEEPALIVEオプションは、アイドル・ソケットを検出し、ソケットを閉じるかどうかを決定します。有効な値は、truefalseです。デフォルト値はtrueです。

<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が係数として適用されます。デフォルト値は、オペレーティング・システムに依存します。

<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が係数として適用されます。デフォルト値は、オペレーティング・システムに依存します。

<connect-timeout>

オプション

非推奨です。<connect-timeout>要素は、<initiator-config>要素内で指定されるようになりました。

<linger-timeout>

オプション

TCP/IPソケットのSO_LINGERオプションの値を指定します。SO_LINGERオプションは、ソケットを強制的に閉じるまでの待機時間を制御します。この要素の値は、次の形式で指定する必要があります。

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

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

  • MSまたはms(ミリ秒)

  • Sまたはs(秒)

  • Mまたはm(分)

  • Hまたはh(時)

  • Dまたはd(日数)

値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は-1であり、これにより遅延タイムアウトは無効化されます。遅延タイムアウトは、この値がゼロよりも大きい場合にのみ設定されます。


transactional-scheme

使用場所: caching-schemes

説明

transactional-scheme要素は、トランザクションを保証する専用の分散キャッシュであるトランザクション・キャッシュを定義します。複数のtransactional-scheme要素を定義して様々な構成をサポートできます。アプリケーションは、次の3つのうちのいずれかの方法でトランザクション・キャッシュを使用します。

  • アプリケーションは、CacheFactory.getCache()メソッドを使用して、トランザクション・キャッシュのインスタンスを取得します。この場合、キャッシュ操作を行う際、暗黙にトランザクションが保証されます。ただし、デフォルトのトランザクション動作を変更することはできません。

  • アプリケーションは、明示的にトランザクション・フレームワークAPIを使用して、トランザクション・キャッシュを使用するConnectionインスタンスを作成します。この場合、キャッシュ操作はトランザクション内で行われ、アプリケーションは必要に応じてデフォルトのトランザクション動作の変更をすべて制御できます。

  • Java EEアプリケーションは、Coherenceリソース・アダプタを使用して、トランザクション・キャッシュを使用するトランザクション・フレームワークAPIのConnectionインスタンスを作成します。この場合、キャッシュ操作は、分散(グローバル)トランザクションの一部として参加できるトランザクション内で実行されます。アプリケーションは、一部のデフォルト・トランザクション動作を変更できます。

要素

表B-70で、transactional-scheme要素のサブ要素を説明します。

表B-70 transactional-schemeのサブ要素

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

<scheme-name>

オプション

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

<scheme-ref>

オプション

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

<service-name>

オプション

このスキームで作成されたキャッシュを管理するサービス名を指定します。サービス名が指定されていない場合のデフォルト・サービス名はTransactionalCacheです。

<service-priority>

オプション

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

<event-dispatcher-priority>

オプション

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

<serializer>

オプション

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

<reliable-transport>

オプション

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

  • datagram – UDPプロトコル

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

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

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

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

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

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

<thread-count>

オプション

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

スレッド数を指定すると、トランザクション記憶域およびリカバリに使用されるトランザクション・フレームワークの内部トランザクション・キャッシュのデフォルト動作が変更されます。

<worker-priority>

オプション

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

<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になっていると、異常終了した場合にキャッシュ内のデータの一部が失われます。デフォルト値は、tangosol-coherence.xmlディスクリプタに指定されたbackup-count値です。tangosol-coherence.xmlディスクリプタに指定されたbackup-countパラメータの値を参照してください。詳細は、「DistributedCacheサービスのパラメータ」を参照してください。

<partition-assignment-strategy>

オプション

パーティション・サービスでパーティション分散を管理する際に使用する戦略を指定します。有効な値は、legacysimpleまたはcom.tangosol.net.partition.PartitionAssignmentStrategyインタフェースを実装するクラスです。レガシー割当て戦略では、パーティション分散は各クラスタ・メンバーで個々に管理されます。単純な戦略は、マシンの安全性を確保しながらパーティション分散のバランスを取ることを試みる集中管理型分散戦略であり、レガシー戦略よりも決定論的で効率的です。デフォルト値はsimpleです。カスタム戦略は、<instance>要素を使用して指定します。

<task-hung-threshold>

オプション

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

<task-timeout>

オプション

サービス・ワーカー・スレッド上で実行するリクエストのタイムアウト値をミリ秒単位で指定します。この属性は、スレッド・プールが使用されている(thread-countの値が正数である)場合にのみ適用されます。zeroが指定された場合は、デフォルトの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実装のクラス構成情報が提供されます。

<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-71は、trust-manager要素で定義可能なサブ要素について説明しています。

表B-71 trust-managerのサブ要素

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

<algorithm>

オプション

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

<provider>

オプション

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

<key-store>

オプション

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


属性リファレンス

表B-72で、キャッシュ構成デプロイメント・ディスクリプタで使用可能なシステム・プロパティ属性を説明します。

表B-72 キャッシュ構成デプロイメント・ディスクリプタの属性

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

system-property

オプション

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