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

前
 
次
 

3 構成について

この章ではCoherenceで提供されるデフォルトの構成ファイルのそれぞれについて説明し、それらのファイルをアプリケーションやソリューションに応じてオーバーライドしてCoherenceの独自の構成ファイルを作成する手順について詳述します。

この章は次の各項で構成されています。

デフォルトの構成ファイルの概要

Coherenceでは、デフォルトのXML構成ファイル・セットがCOHERENCE_HOME\lib\coherence.jarライブラリに用意されています。これらのファイルおよび関連するDTD(Document Type Definition)ファイルについては、Coherenceのライブラリをディレクトリに解凍すれば簡単に確認できます。

構成ファイルにはデフォルト値が設定されており、Coherenceを出荷状態のまま最小の変更で使用できます。これらのファイルは実例を示すことのみを目的としたものであり、再利用したり、特定のアプリケーションやソリューションで必要とされる変更を加えたりできます。ただし、構成ファイルを別に作成して、デフォルトの構成ファイルをオーバーライドすることをお薦めします。

デフォルトの構成ファイルの内容は、次のとおりです。

オペレーション構成ファイルの指定

オペレーション・デプロイメント・ディスクリプタtangosol-coherence.xmlにはオペレーション設定とランタイム設定が用意されており、クラスタ、通信、およびデータ管理の各サービスの作成と構成に使用されます。Coherenceは、実行時に、クラスパスで最初に見つかったtangosol-coherence.xmlファイルを使用します。

Coherenceで提供されるデフォルトのオペレーション・デプロイメント・ディスクリプタはcoherence.jarライブラリのルートにあります。このファイルは必要に応じて変更できます。ただし、オペレーション・ランタイム構成時には、このファイルをオーバーライドすることをお薦めします。XMLのオーバーライド機能の詳細は、「XMLオーバーライド機能について」を参照してください。

この項は、次のトピックで構成されています。

オペレーション・ランタイムの構成手順の詳細は、第II部「データ・クラスタの使用方法」を参照してください。

デフォルトのオペレーション・オーバーライド・ファイルの使用方法

デフォルトのtangosol-coherence.xmlファイルの要素は、実行時のクラスパスにtangosol-coherence-override.xmlという名前のオペレーション・オーバーライド・ファイルを置くことによりオーバーライドされます。オーバーライド・ファイルの構造は、すべての要素がオプションであることを除き、オペレーション・デプロイメント・ディスクリプタと同一です。オーバーライド・ファイルには変更される要素のみが含まれます。欠落している要素は、tangosol-coherence.xmlファイルからロードされます。

一般的に、オペレーション・オーバーライド・ファイルは、オペレーション・ランタイムを構成するための最も包括的な方法を提供し、開発環境と本番環境の両方で使用されます。

デフォルトのオペレーション・オーバーライド・ファイルを使用するには:

  1. tangosol-coherence-override.xmlという名前のファイルを作成します。

  2. ファイルを編集し、オーバーライドするオペレーション要素を追加します。

    次の例では、クラスタ名を構成し、デフォルトのクラスタ名をオーバーライドします。

    <?xml version='1.0'?>
    
    <!DOCTYPE coherence SYSTEM "coherence.dtd">
    
    <coherence>
       <cluster-config>
          <member-identity>
             <cluster-name system-property="tangosol.coherence.cluster">
                MyCluster</cluster-name>
          </member-identity>
       </cluster-config>
    </coherence>
    
  3. ファイルを保存して閉じます。

  4. オペレーション・オーバーライド・ファイルが実行時のクラスパスにあることを確認します。

    次の例では、COHERENCE_HOMEにあるオーバーライド・ファイルを使用するキャッシュ・サーバーを起動します。

    java -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer
    

    ヒント:

    開発中にcache-serverスクリプトおよびcoherenceスクリプトを使用するときには、各スクリプトでJava -cp引数を使用してtangosol-coherence-override.xmlファイルの場所をクラスパスに追加してください。

オペレーション・オーバーライド・ファイルの指定

tangosol.coherence.overrideシステム・プロパティでは、デフォルトのtangosol-coherence-override.xmlファイルのかわりに使用されるオペレーション・オーバーライド・ファイルを適宜指定します。指定されるファイルの構造は、すべての要素がオプションであることを除き、オペレーション・デプロイメント・ディスクリプタと同一です。欠落している要素は、tangosol-coherence.xmlファイルからロードされます。

tangosol.coherence.overrideシステム・プロパティを使用すると、異なるオペレーション構成間での切り替えを簡単に行えるため、開発およびテストの際に便利です。

オペレーション・オーバーライド・ファイルを指定するには:

  1. テキスト・ファイルを作成します。

  2. ファイルを編集し、オーバーライドするオペレーション要素を追加します。

    次の例では、マルチキャスト・ポート番号を構成します。

    <coherence>
       <cluster-config>
          <multicast-listener>
             <port system-property="tangosol.coherence.clusterport">3059</port>
          </multicast-listener>
       </cluster-config>
    </coherence>
    
  3. ファイルをXMLファイルとして保存して閉じます。

  4. オペレーション・オーバーライド・ファイルの名前をtangosol.coherence.overrideシステム・プロパティの値として指定します。クラスパスにファイルがない場合は、ファイルのフルパス(または相対パス)と名前を入力します。このシステム・プロパティでオペレーション・オーバーライド・ファイルの場所を指定するときには、URLを使用することもできます。

    次の例では、キャッシュ・サーバーを起動して、COHERENCE_HOMEにあるオペレーション・オーバーライド・ファイルcluster.xmlを使用します。

    java -Dtangosol.coherence.override=cluster.xml -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer
    

特定のオペレーション要素に対するオーバーライド・ファイルの定義

オーバーライド・ファイルを作成すると、特定のオペレーション要素の内容をオーバーライドできます。オーバーライド・ファイルは、ルート要素とオーバーライドされる要素が一致している必要があることを除き、オペレーション・デプロイメント・ディスクリプタと同一構造です。特定のオペレーション要素のためのオーバーライド・ファイルの定義の詳細は、「カスタムのオーバーライド・ファイルの定義」を参照してください。

一般的に、特定のオペレーション要素のためのオーバーライド・ファイルを使用すると、オペレーション・デプロイメント・ディスクリプタの修正可能な箇所を詳細に制御して、デプロイメント・シナリオごとに異なる構成を作成できます。

特定のオペレーション要素のためのオーバーライド・ファイルを定義するには:

  1. デフォルトのオペレーション・オーバーライド・ファイルの使用方法」の説明に従って、tangosol-coherence-override.xmlファイルを作成します。

  2. オーバーライドする要素にxml-override属性を追加します。xml-override属性の値はオーバーライド・ファイルの名前です。

    次の例では、<cluster-config>要素をオーバーライドするために使用するオーバーライド・ファイルcluster-config.xmlを定義します。

    <coherence>
       <cluster-config xml-override="/cluster-config.xml">
       ...
       </cluster-config>
    </coherence>
    
  3. ファイルを保存して閉じます。

  4. テキスト・ファイルを作成します。

  5. ファイルを編集して、オーバーライドする要素に対応するXMLノードを追加します。XMLルートはオーバーライドする要素と一致させる必要があります。

    ステップ2の例を使用して、<cluster-config>要素をオーバーライドするための次のノードを作成し、マルチキャスト・ジョイント・タイムアウトを指定します。

    <cluster-config>
       <multicast-listener>
          <join-timeout-milliseconds>4000</join-timeout-milliseconds>
        </multicast-listener>
    </cluster-config>
    
  6. xml-override属性で使用されている名前をファイルに付けてXMLファイルとして保存します。

  7. 両方のオーバーライド・ファイルが実行時のクラスパスにあることを確認します。

    次の例では、COHERENCE_HOMEにあるオーバーライド・ファイルを使用するキャッシュ・サーバーを起動します。

    java -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer
    

ロードされたオペレーション・オーバーライド・ファイルの表示

Coherenceノードの出力に、起動時にロードされるオペレーション構成ファイルの場所と名前が示されます。オペレーション構成メッセージは、プロセスを起動するときに発行される最初のメッセージです。この出力は、複数のオーバーライド・ファイルを使用するときに特に有用ですが、Coherenceのアプリケーションやソリューションを開発およびテストするときにも役立ちます。

次の出力例は、発行される典型的なメッセージを示しています。

Loaded operational configuration from resource "jar:file:/D:/coherence/lib/
   coherence.jar!/tangosol-coherence.xml"
Loaded operational overrides from resource "jar:file:/D:/coherence/lib/
   coherence.jar!/tangosol-coherence-override-dev.xml"
Loaded operational overrides from resource "file:/D:/coherence/
   tangosol-coherence-override.xml"
Optional configuration override "/cluster-config.xml" is not specified
Optional configuration override "/custom-mbeans.xml" is not specified

前述の出力は、coherence.jarに含まれるオペレーション・デプロイメント・ディスクリプタがロードされたこと、およびこのファイルの設定が2つのロードされたオーバーライド・ファイルtangosol-coherence-override-dev.xmlおよびtangosol-coherence-override.xmlによってオーバーライドされることを示しています。また、2つのオーバーライド・ファイルは、特定のオペレーション要素のために定義されましたが、実行時には見つかることもロードされることもありませんでした。

キャッシュ構成ファイルの指定

キャッシュ構成デプロイメント・ディスクリプタ・ファイルcoherence-cache-config.xmlは、クラスタ内で使用できる様々な種類のキャッシュを指定するために使用されます。Coherenceの実行時には、クラスパスで最初に見つかったcoherence-cache-config.xmlファイルが使用されます。Coherenceでは、サンプルのcoherence-cache-config.xmlファイルが提供されており、coherence.jarライブラリのルートに配置されています。このサンプル・ファイルは、デモ用のものです。サンプル・ファイルは必要に応じて変更または再利用できますが、サンプル・ファイルを使用するかわりにカスタムのキャッシュ構成デプロイメント・ディスクリプタを作成することをお薦めします。


注意:

  • クラスタ内のすべてのキャッシュ・サーバー・ノードで同一のキャッシュ構成ディスクリプタを使用することをお薦めします(必須ではありません)。

  • Coherenceでは、キャッシュ構成デプロイメント・ディスクリプタを起動させる必要があります。実行時にキャッシュ構成デプロイメント・ディスクリプタが起動していないと、構成リソースのロードに失敗したことを伝えるエラー・メッセージが表示され、見つからなかったファイルの名前と場所も示されます。


この項は、次のトピックで構成されています。

キャッシュの構成手順の詳細は、第III部「キャッシュの使用方法」を参照してください。

デフォルトのキャッシュ構成ファイルの使用方法

Coherenceは、出荷状態では、クラスパスで最初に見つかったcoherence-cache-config.xmlファイルを使用するように構成されています。coherence-cache-config.xmlファイルを使用するには、このファイルが、クラスパスの、coherence.jarライブラリよりも上位にある必要があります。そうでない場合は、coherence.jarにあるサンプルのcoherence-cache-config.xmlファイルが使用されます。

デフォルトのキャッシュ構成ファイルを使用するには:

  1. coherence.jarにあるサンプルのcoherence-cache-config.xmlファイルのコピーを作成して、それを別の場所に保存します。サンプル・ファイルのキャッシュ定義はデモ用です。このファイルを基にしてソリューション固有のキャッシュ構成を作成するようにしてください。

  2. coherence-cache-config.xmlファイルの保存場所が、実行時のクラスパスの、coherence.jarファイルよりも上位にあることを確認します。

    次の例では、COHERENCE_HOMEにあるキャッシュ構成ファイルcoherence-cache-config.xmlを使用するキャッシュ・サーバーを起動します。

    java -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer
    

デフォルトのキャッシュ構成ファイルのオーバーライド

キャッシュ構成デプロイメント・ディスクリプタのデフォルトの名前と場所は、<configurable-cache-factory-config>要素のオペレーション・デプロイメント・ディスクリプタに指定されています。この要素をオーバーライドして、デフォルトのキャッシュ構成ファイルとは異なる名前と場所が使用されるように指定できます。

デフォルトのキャッシュ構成ファイルをオーバーライドするには:

  1. coherence.jarにあるデフォルトのキャッシュ構成ファイルcoherence-cache-config.xmlのコピーを作成して別名で保存します。

  2. デフォルトのオペレーション・オーバーライド・ファイルの使用方法」の説明に従って、tangosol-coherence-override.xmlファイルを作成します。

  3. オペレーション・オーバーライド・ファイルを編集して、ステップ1で作成されたキャッシュ構成ファイルの名前を指定する<configurable-cache-factory-config>ノードを入力します。キャッシュ構成ファイルがクラスパスにない場合は、ファイルのフルパス(または相対パス)も入力します。この要素では、キャッシュ構成ファイルの場所を指定するときに、URLを使用することもできます。

    次の例では、キャッシュ構成デプロイメント・ディスクリプタMyConfig.xmlを指定します。

    <coherence>
       <configurable-cache-factory-config>
          <init-params>
             <init-param>
                <param-type>java.lang.String</param-type>
                <param-value system-property="tangosol.coherence.cacheconfig">
                   MyConfig.xml</param-value>
             </init-param>
          </init-params>
       </configurable-cache-factory-config>
    </coherence>
    
  4. ファイルを保存して閉じます。

  5. オペレーション・オーバーライド・ファイルが実行時のクラスパスにあることを確認します。

    次の例では、COHERENCE_HOMEにあるオペレーション・オーバーライド・ファイルとカスタムのキャッシュ構成ファイルを使用するキャッシュ・サーバーを起動します。

    java -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer
    

キャッシュ構成ファイルのシステム・プロパティの使用方法

tangosol.coherence.cacheconfigシステム・プロパティを使用して、構成されたデフォルトのキャッシュ構成デプロイメント・ディスクリプタのかわりに使用するカスタムのキャッシュ構成デプロイメント・ディスクリプタを指定します。システム・プロパティを使用すると、異なる構成間での切替えを簡単に行えるため、開発およびテストの際に便利です。

カスタムのキャッシュ構成ファイルを指定するには、tangosol.coherence.cacheconfigシステム・プロパティの値としてファイルの名前を入力します。これは、通常、Coherenceノードの起動時にJavaオプション-Dを使用して指定されます。クラスパスにファイルがない場合は、ファイルのフルパス(または相対パス)と名前を入力します。このシステム・プロパティでキャッシュ構成ファイルの場所を指定するときには、URLを使用することもできます。

次の例では、キャッシュ・サーバーを起動し、COHERENCE_HOMEにあるキャッシュ構成デプロイメント・ディスクリプタMyConfig.xmlを指定します。

java -Dtangosol.coherence.cacheconfig=MyConfig.xml -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer

ロードされたキャッシュ構成ファイルの表示

Coherenceノードの出力に、起動時にロードされるキャッシュ構成デプロイメント・ディスクリプタの場所と名前が示されます。構成メッセージはCoherenceの著作権情報の後に最初に表示されるメッセージです。Coherenceのアプリケーションやソリューションを開発およびテストするときには、この出力が特に役立ちます。

次の出力例は、キャッシュ構成デプロイメント・ディスクリプタMyconfig.xmlがロードされたことを示すキャッシュ構成メッセージを示しています。

Loaded cache configuration from resource "file:/D:/coherence/Myconfig.xml"

POF構成ファイルの指定

POF構成デプロイメント・ディスクリプタ・ファイルpof-config.xmlは、POF(Portable Object Format)を使用したシリアライズでのカスタム・ユーザー型の指定に使用されます。Coherenceは、実行時に、クラスパスで最初に見つかったpof-config.xmlファイルを使用します。


注意:

  • クラスタ内のすべてのノードで同一のPOF構成デプロイメント・ディスクリプタを使用することをお薦めします。

  • POFシリアライザがキャッシュ・スキームの一部として構成されている場合や、すべてのキャッシュ・スキームに対してグローバルに構成されている場合にかぎり、POF構成デプロイメント・ディスクリプタがロードされます。デフォルトのcoherence-cache-config.xmlには、POFシリアライザを定義するサンプルのキャッシュ・スキームが用意されていますが、デフォルトでコメント・アウトされています。


Coherenceで提供されるデフォルトのPOF構成デプロイメント・ディスクリプタはcoherence.jarライブラリのルートにあります。このファイルは、特定のアプリケーションやソリューションに応じて、カスタマイズ、置換、または拡張してください。デフォルトでは、デプロイメント・ディスクリプタはcoherence-pof-config.xmlファイルを参照します。このファイルには、Coherence固有のユーザー型が定義されており、POF構成ファイルを拡張または作成するときには常に必要となります。

この項は、次のトピックで構成されています。

POFユーザー型の構成手順の詳細は、第17章「Portable Object Formatの使用」を参照してください。

POF構成ファイルのシステム・プロパティの使用方法

tangosol.pof.configシステム・プロパティを使用して、デフォルトのpof-config.xmlファイルのかわりに使用するカスタムのPOF構成デプロイメント・ディスクリプタを指定します。システム・プロパティを使用すると、異なる構成間での切替えを簡単に行えるため、開発およびテストの際に便利です。

カスタムのPOF構成ファイルを指定するには:

  1. XMLファイルを作成します。

  2. ファイルを編集して、デフォルトのCoherence POFユーザー型を含む<pof-config>ノードを作成します。

    <?xml version="1.0"?>
    
    <!DOCTYPE pof-config SYSTEM "pof-config.dtd">
    
    <pof-config>
       <user-type-list>
          <include>coherence-pof-config.xml</include>
       </user-type-list>
    </pof-config>
    
  3. ファイルを保存して閉じます。

  4. そのファイルの名前をtangosol.pof.configシステム・プロパティの値として指定します。これは、通常、Coherenceノードの起動時にJavaオプション-Dを使用して指定されます。クラスパスにファイルがない場合は、ファイルのフルパス(または相対パス)と名前を入力します。このシステム・プロパティでPOF構成ファイルの場所を指定するときには、URLを使用することもできます。

    次の例では、キャッシュ・サーバーを起動し、COHERENCE_HOMEにあるPOF構成デプロイメント・ディスクリプタMyPOF.xmlを指定します。

    java -Dtangosol.pof.config=MyPOF.xml -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer
    

複数のPOF構成ファイルの組合せ

<include>要素は、POF構成デプロイメント・ディスクリプタ内で、定義済のユーザー型を別のPOF構成デプロイメント・ディスクリプタ内に含めるために使用されます。これにより、ユーザー型をわかりやすく編成できるようになります(アプリケーション別や開発グループ別など)。


注意:

複数のPOF構成ファイルを組み合せる場合は、定義済の各ユーザー型が一意の<type-id>を持つ必要があります。型IDが含まれていない場合には、コンポジット構成ファイル内でのそのユーザー型の出現順序に基づいて型IDが指定されます。

複数のPOF構成ファイルを組み合せるには:

  1. 起動時にロードされる既存のPOF構成ファイルを開きます。

  2. POF構成ファイルの名前を値として持つ<include>要素を追加します。クラスパスにファイルがない場合は、ファイルのフルパス(または相対パス)と名前を入力します。ファイルの場所としてURLを使用することもできます。

    次の例では、デフォルトのCoherence POF構成ファイルと2つのPOF構成ファイルを組み合せて使用します。

    <pof-config>
       <user-type-list>
          <include>coherence-pof-config.xml</include>
          <include>hr-pof-config.xml</include>
          <include>crm-pof-config.xml</include>
       </user-type-list>
    </pof-config>
    
  3. ファイルを保存して閉じます。

  4. 必要があれば、POF構成ファイルが実行時のクラスパスにあることを確認します。

    次の例では、COHERENCE_HOMEにあるPOF構成ファイルを使用するキャッシュ・サーバーを起動します。

    java -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer
    

ロードされたPOF構成ファイルの表示

Coherenceノードの出力に、起動時にロードされるPOF構成デプロイメント・ディスクリプタの場所と名前が示されます。構成メッセージは、Coherenceの著作権情報の後に表示されるメッセージの一部であり、POFを使用するように構成されたキャッシュ・サービスと関連付けられています。Coherenceのアプリケーションやソリューションを開発およびテストするときには、この出力が特に役立ちます。

次の出力例は、4つのPOF構成デプロイメント・ディスクリプタがロードされたことを示すPOF構成メッセージです。

Loading POF configuration from resource "file:/D:/coherence/my-pof-config.xml"
Loading POF configuration from resource "file:/D:/coherence/coherence-pof-config.xml"
Loading POF configuration from resource "file:/D:/coherence/hr-pof-config.xml"
Loading POF configuration from resource "file:/D:/coherence/crm-pof-config.xml"

管理構成ファイルの指定

管理構成には様々な構成ファイルが使用されます。これらには、次のものが含まれます。

この項は、次のトピックで構成されています。

管理構成の手順の詳細は、第VI部「Coherenceの管理」を参照してください。

カスタムのレポート・グループ構成ファイルの指定

デフォルトのレポート・グループ構成ファイルの名前と場所は、<management-config>ノード内のオペレーション構成デプロイメント・ディスクリプタに指定されています。カスタムのレポート・グループ構成ファイルは、オペレーション・オーバーライド・ファイルまたはシステム・プロパティを使用して指定できます。


注意:

レポート・グループ構成ファイルは、JMX管理が有効な場合にかぎりロードされます。次の例では、MBeanサーバーをホストするノード上でJMX管理を有効にします。

デフォルトのレポート・グループ構成ファイルのオーバーライド

カスタムのレポート・グループ構成ファイルの名前と場所は、オペレーション・オーバーライド・ファイルを使用して指定できます。このメカニズムによって、レポート・グループ構成ファイルのデフォルトの名前と場所がオーバーライドされます。

デフォルトのレポート・グループ構成ファイルをオーバーライドするには:

  1. XMLファイルを作成します。

  2. 次のようにファイルを編集して空の<report-group>ノードを作成します。

    <?xml version='1.0'?>
    
    <!DOCTYPE report-group SYSTEM "report-group.dtd">
    
    <report-group>
    </report-group>
    
  3. ファイルを保存して閉じます。

  4. デフォルトのオペレーション・オーバーライド・ファイルの使用方法」の説明に従って、tangosol-coherence-override.xmlファイルを作成します。

  5. ファイルを編集して、レポート・グループ構成ファイルの名前を指定する<management-config>ノードを指定します。レポート・グループ構成ファイルがクラスパスにない場合は、ファイルのフルパス(または相対パス)も入力します。この要素では、レポート・グループ構成ファイルの場所を指定するときに、URLを使用することもできます。

    次の例では、JMX管理を有効にし、レポート・グループ構成デプロイメント・ディスクリプタmy-group.xmlを指定します。

    <coherence>
       <management-config>
          <managed-nodes system-property="tangosol.coherence.management">
             all</managed-nodes>
          <reporter>
             <configuration system-property="tangosol.coherence.management.report.
                configuration">my-group.xml</configuration>
          </reporter>
       </management-config>
    </coherence>
    
  6. ファイルを保存して閉じます。

  7. オペレーション・オーバーライド・ファイルが実行時のクラスパスにあることを確認します。

    次の例では、COHERENCE_HOMEにあるオペレーション・オーバーライド・ファイルとレポート・グループ構成ファイルを使用してキャッシュ・サーバーを起動します。

    java -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer
    

レポート・グループ構成ファイルのシステム・プロパティの使用方法

tangosol.coherence.management.report.configurationシステム・プロパティを使用して、デフォルトのreport-group.xmlファイルのかわりに使用するカスタムのレポート・グループ構成ファイルを指定します。システム・プロパティを使用すると、異なる構成間での切替えを簡単に行えるため、開発およびテストの際に便利です。

カスタムのレポート・グループ構成ファイルを指定するには、システム・プロパティtangosol.coherence.management.report.configurationの値としてファイルの名前を入力します。これは、通常、Coherenceノードの起動時にJavaオプション-Dを使用して指定されます。クラスパスにファイルがない場合は、ファイルのフルパス(または相対パス)と名前を入力します。このシステム・プロパティでレポート・グループ構成ファイルの場所を指定するときには、URLを使用することもできます。

次の例では、キャッシュ・サーバーを起動し、JMX管理を有効にして、COHERENCE_HOMEにあるレポート・グループ構成ファイルmy-group.xmlを指定します。

java -Dtangosol.coherence.management=all -Dtangosol.coherence.management.report.configuration=my-group.xml -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer

MBean構成ファイルの指定

オペレーション・デプロイメント・ディスクリプタtangosol-coherence.xmlは、オペレーション・オーバーライド・ファイルcustom-mbeans.xmlを定義するため(特に、カスタムのMBeansを定義するため)に使用されます。オーバーライド・ファイルの名前と場所は、MBean構成ファイルのシステム・プロパティを使用して指定することもできます。

デフォルトのMBean構成オーバーライド・ファイルの使用方法

カスタムMBeansは、オーバーライド・ファイルcustom-mbeans.xml内に定義されます。Coherenceは、実行時に、クラスパスで最初に見つかったcustom-mbeans.xmlファイルが使用されます。

デフォルトのMBean構成オーバーライド・ファイルを使用するには:

  1. custom-mbeans.xmlという名前のファイルを作成します。

  2. 次のようにファイルを編集して空の<mbeans>ノードを作成します。

    <mbeans>
    </mbeans>
    
  3. ファイルを保存して閉じます。

  4. カスタムMBean構成オーバーライド・ファイルが実行時のクラスパスにあることを確認します。

    次の例では、COHERENCE_HOMEにあるデフォルトのMBean構成オーバーライド・ファイルを使用するキャッシュ・サーバーを起動します。

    java -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer
    

MBean構成ファイルのシステム・プロパティの使用方法

tangosol.coherence.mbeansシステム・プロパティでは、デフォルトのオーバーライド・ファイルcustom-mbeans.xmlのかわりに使用されるMBean構成オーバーライド・ファイルを指定します。システム・プロパティを使用すると、異なるMBean構成間での切替えを簡単に行えるため、開発およびテストの際に便利です。

MBean構成オーバーライド・ファイルを指定するには、tangosol.coherence.mbeansシステム・プロパティの値としてファイルの名前を入力します。これは、通常、Coherenceノードの起動時にJavaオプション-Dを使用して指定されます。クラスパスにファイルがない場合は、ファイルのフルパス(または相対パス)と名前を入力します。このシステム・プロパティでMBean構成オーバーライド・ファイルの場所を指定するときには、URLを使用することもできます。

次の例では、キャッシュ・サーバーを起動し、COHERENCE_HOMEにあるMBean構成オーバーライド・ファイルmy-mbeans.xmlを指定します。

java -Dtangosol.coherence.mbeans=my-mbeans.xml -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer

ロードされた管理構成ファイルの表示

Coherenceノードの出力に、起動時にロードされるレポート・グループ構成ファイルおよびMBean構成ファイルの場所と名前が示されます。Coherenceのアプリケーションやソリューションを開発およびテストするときには、この出力が特に役立ちます。

レポート・グループ構成ファイル

レポート・グループ構成メッセージは、Coherenceの著作権情報の後に表示されるメッセージの一部です。

次の出力例は、my-group.xmlファイルがロードされたことを示すレポート・グループ構成メッセージを示しています。

Loaded cache configuration from resource "file:/D:/coherence/my-group.xml

MBean構成オーバーライド・ファイル

MBean構成メッセージは、他のオペレーション・オーバーライド・メッセージとともに表示されるものであり、プロセスの起動時に最初に表示されるメッセージの一部です。この出力は、オーバーライド・ファイルを使用するときには特に有用ですが、Coherenceのアプリケーションやソリューションを開発およびテストするときにも役立ちます。

次の出力例は、デフォルトのMBean構成オーバーライド・ファイルがロードされたことを示すオペレーション・オーバーライド・メッセージを示しています。

Loaded operational overrides from resource "file:/D:/coherence/custom-mbeans.xml"

XMLオーバーライド機能について

XMLオーバーライド機能は、coherence.jarにあるデフォルト・オペレーション・デプロイメント・ディスクリプタtangosol-coherence.xmlを編集することなくオペレーション設定を変更可能な構成メカニズムです。Coherenceのオペレーション・ランタイムを構成するには、この方法をお薦めします。

XMLオーバーライド機能は、特定のオペレーションXML要素を持つXMLドキュメント(通称、オーバーライド・ファイル)を関連付けることによって有効になります。XML要素とそのいずれのサブ要素も、後から必要に応じてオーバーライド・ファイル内で修正されます。実行時に、Coherenceによりオーバーライド・ファイルがロードされ、その要素によってtangosol-coherence.xmlファイル内の要素が置換または追加されます。

オーバーライド・ファイルは実行時に存在している必要はありません。ただし、オーバーライド・ファイルが存在する場合は、そのファイルのルート要素とファイルによりオーバーライドされる要素が一致している必要があります。また、サブ要素はオプションです。サブ要素は、オーバーライド・ファイルに定義されていない場合、tangosol-coherence.xmlファイルからロードされます。通常、変更または追加されるサブ要素のみがオーバーライド・ファイルに追加されます。

この項は、次のトピックで構成されています。

事前定義されたオーバーライド・ファイルの使用方法

2つのオーバーライド・ファイルが事前定義されており、オペレーション・デプロイメント・ディスクリプタ内の要素をオーバーライドするために使用できます。これらのファイルは手動で作成され、クラスパスに保存されます。

  • tangosol-coherence-override.xml: このオーバーライド・ファイルは<coherence>ルート要素用に定義され、オペレーション・デプロイメント・ディスクリプタ内の任意の要素をオーバーライドするために使用されます。このファイルのルート要素は<coherence>要素である必要があります。

  • custom-mbeans.xml: このオーバーライド・ファイルは<mbeans>要素用に定義され、オペレーション・デプロイメント・ディスクリプタにカスタムのMBeanを追加するために使用されます。このファイルのルート要素は<mbeans>要素である必要があります。

次の例では、tangosol-coherence-override.xmlファイルを使用してデフォルトのクラスタ名をオーバーライドします。その他のオペレーション設定はすべてtangosol-coherence.xmlファイルからロードされます。

<coherence>
   <cluster-config>
      <member-identity>
         <cluster-name>MyCluster</cluster-name>
      </member-identity>
   </cluster-config>
</coherence>

次の例では、tangosol-coherence-override.xmlファイルを使用して、このノード上の分散キャッシュ・サービスのローカル・ストレージを無効にします。複数出現する要素を区別するためにid属性が使用されます。id属性は、オーバーライドされる要素のid属性と一致している必要があります。

<coherence>
   <services>
      ...
      <service id="3">
         <init-params>
            ...
            <init-param id="4">
               <param-name>local-storage</param-name>
               <param-value system-property="tangosol.coherence.distributed.
                  localstorage">false</param-value>
            </init-param>
            ...
         <init-params>
      </service>
      ...
   </services>
</coherence>

次の例では、custom-mbean.xmlファイルを使用して標準のMBean定義をMBeanのリストに追加します。

<mbeans>
   <mbean id="100">
      <mbean-class>com.oracle.customMBeans.Query</mbean-class>
      <mbean-name>type=Query</mbean-name>
      <enabled>true</enabled>
   </mbean>
</mbeans>

カスタムのオーバーライド・ファイルの定義

tangosol-coherence.xmlデプロイメント・ディスクリプタ内の要素はすべて、事前定義されたtangosol-coherence-override.xmlファイルを使用してオーバーライドできます。ただし、より詳細な構成の管理が必要な場合があります。たとえば、ソリューションでオペレーション・デプロイメント・ディスクリプタの特定の要素のみを変更できるようにして、全体を変更することはできないようにしたい場合があります。また別の例として、様々なユースケースに基づいた様々な構成が必要となるソリューションもあります。そうした状況に対応するには、カスタムのオーバーライド・ファイルを使用します。

xml-overrideおよびid属性の使用方法

オーバーライド・ファイルはxml-override属性とid属性(必要な場合)を使用して定義されます。これらの属性はいずれもオプションで指定されるものであり、オーバーライドされるオペレーション要素に追加されます。表A-65は、xml-override属性およびid属性を指定できるオペレーション要素を示しています。

xml-override属性の値は、ClassLoader.getResourceAsStream(String name)メソッドを使用してcoherence.jarライブラリに含まれるクラスにアクセス可能なドキュメントの名前です。これは一般的に、ファイルの名前に/という接頭辞が付いていて、ファイルが実行時のクラスパスにあることを意味します。属性でオーバーライド・ファイルの場所を指定するときには、URLを使用することもできます。

たとえば、<cluster-config>要素をオーバーライドするために使用されるオーバーライド・ファイルcluster-config.xmlを定義するには、次のようにtangosol-coherence-override.xmlファイル内の<cluster-config>要素にxml-override属性を追加します。

<coherence>
   <cluster-config xml-override="/cluster-config.xml">
   ...
   </cluster-config>
</coherence>

このオーバーライド・ファイルを使用するには、cluster-config.xmlという名のドキュメントを作成し、そのドキュメントとベース・ドキュメント(この場合はtangosol-coherence-override.xml)が実行時のクラスパス内のディレクトリにあることを確認します。この例の場合、次に示すように、オーバーライド・ファイルのルート要素は<cluster-config>である必要があります。

<cluster-config>
   <multicast-listener>
      <join-timeout-milliseconds>4000</join-timeout-milliseconds>
    </multicast-listener>
</cluster-config>

id属性は、複数回出現する要素を識別するために使用します。

たとえば、分散キャッシュ・サービスの<service>要素をオーバーライドするために使用されるカスタムのオーバーライド・ファイルdist-service-config.xmlを定義するには、次のようにid3<service>要素にxml-override属性を追加します。

<coherence>
   <services>
      <service id="3" xml-override="/dist-service-config.xml">
      </service>
   </services>
</coherence>

このオーバーライド・ファイルを使用するには、dist-service-config.xmlという名前のドキュメントを作成し、そのドキュメントが実行時のクラスパス内のディレクトリにあることを確認します。この例の場合、次に示すように、オーバーライド・ファイルのルート要素は<service>である必要があります。

<service id="3">
   <init-params>
      <init-param id="1">
         <param-name>standard-lease-milliseconds</param-name>
         <param-value>2</param-value>
      </init-param>
      ...
   </init-params>
</service>

注意:

オーバーライド・ドキュメント内の要素のidに一致する要素がベース・ドキュメントにないと、その要素はベース・ドキュメントに追加されます。

同じ要素用の複数のオーバーライド・ファイルの定義

同一要素に対して複数のオーバーライド・ファイルを定義して、一連のオペレーション・オーバーライド・ファイルを作成できます。これによりステージングや本番などの様々なデプロイメント・シナリオに応じたオペレーション構成が可能になります。

たとえば、coherence.jarにあるオペレーション・デプロイメント・ディスクリプタtangosol-coherence.xmlでは、次のように<coherence>要素のためのオペレーション・オーバーライド・ファイルを定義します。

<coherence xml-override="{tangosol.coherence.override /tangosol-coherence-override-{mode}.xml}">
   ...
</coherence>

モード固有のオーバーライド・ファイルもcoherence.jarにあり、Coherence起動モード(<license-mode>要素の値)に基づいて使用されます。モード固有の各オペレーション・オーバーライド・ファイルは、次のようにデフォルトのオペレーション・オーバーライド・ファイルを定義します。

<coherence xml-override="/tangosol-coherence-override.xml">
   ...
</coherence>

tangosol-coherence-override.xmlファイルの<coherence>要素に対して4つのオーバーライド・ファイルを定義できます。例:

<coherence xml-override="/tangosol-coherence-override-staging.xml">
   ...
</coherence>

必要に応じて連鎖を継続できます。これらのファイルはすべて、クラスパス内のディレクトリに置かれているかぎり実行時にロードされます。連鎖内の上位にあるファイルが常に下位のファイルをオーバーライドします。

システム・プロパティを使用した構成の変更

コマンドライン・オーバーライド機能により、システム・プロパティを使用してオペレーションおよびキャッシュ設定をオーバーライドできます。システム・プロパティは通常、Javaの-Dオプションを使用してJavaコマンドラインで指定されます。これによりクラスタ内のすべてのノードで同一のオペレーション構成ファイルおよびキャッシュ構成ファイルを使用しながらノードごとに構成をカスタマイズできるようになります。システム・プロパティを使用すると、開発中の設定を簡単かつ迅速に変更することもできます。

この項は、次のトピックで構成されています。

事前構成されているシステム・プロパティの使用方法

Coherenceでは、様々なオペレーション設定およびキャッシュ設定をオーバーライドするために使用できる多数のシステム・プロパティが事前構成されています。表3-1に事前構成されたすべてのシステム・プロパティを示してあります。

事前構成されたシステム・プロパティを使用するには、起動時にJavaの -Dオプションを使用してシステム・プロパティを追加します。次の例では、システム・プロパティtangosol.coherence.log.levelを使用してキャッシュ・サーバー起動時のログ・レベルを指定します。

java -Dtangosol.coherence.log.level=3 -cp COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer

表3-1 事前構成されたシステム・プロパティ

システム・プロパティ 設定

tangosol.coherence.cacheconfig

キャッシュ構成ディスクリプタのファイル名。「configurable-cache-factory-config」を参照してください。

tangosol.coherence.cluster

クラスタ名。「member-identity」を参照してください。

tangosol.coherence.clusteraddress

クラスタ(マルチキャスト)のIPアドレス。「multicast-listener」の<multicast-listener-address>サブ要素を参照してください。

tangosol.coherence.clusterport

クラスタ(マルチキャスト)のIPポート。「multicast-listener」の<multicast-listener-port>サブ要素を参照してください。

tangosol.coherence.distributed.backup

データ・バックアップ記憶域の場所。「DistributedCacheサービスのパラメータ」のbackup-storage/typeサブ要素を参照してください。

tangosol.coherence.distributed.backupcount

データ・バックアップの数。「DistributedCacheサービスのパラメータ」のbackup-countサブ要素を参照してください。

tangosol.coherence.distributed.localstorage

有効化されているローカル・パーティション管理。「DistributedCacheサービスのパラメータ」のlocal-storageサブ要素を参照してください。

tangosol.coherence.distributed.threads

スレッド・プールのサイズ。「DistributedCacheサービスのパラメータ」のthread-countサブ要素を参照してください。

tangosol.coherence.distributed.transfer

パーティション送信のしきい値。「DistributedCacheサービスのパラメータ」のtransfer-thresholdサブ要素を参照してください。

tangosol.coherence.edition

製品のエディション。「license-config」を参照してください。

tangosol.coherence.invocation.threads

起動サービスのスレッド・プールのサイズ。「InvocationServiceのパラメータ」のthread-countサブ要素を参照してください。

tangosol.coherence.localhost

ユニキャストのIPアドレス。「unicast-listener」の<unicast-listener-address>サブ要素を参照してください。

tangosol.coherence.localport

ユニキャストのIPポート。「unicast-listener」の<unicast-listener-port>サブ要素を参照してください。

tangosol.coherence.localport.adjust

ユニキャストのIPポートの自動割当て。「unicast-listener」の<unicast-listener-auto>サブ要素を参照してください。

tangosol.coherence.log

ロギング先。「logging-config」の<logging-config-destination>サブ要素を参照してください。

tangosol.coherence.log.level

ロギング・レベル。「logging-config」の<logging-config-level>サブ要素を参照してください。

tangosol.coherence.log.limit

ログ出力文字制限。「logging-config」の<logging-config-limit>サブ要素を参照してください。

tangosol.coherence.machine

マシン名。「member-identity」を参照してください。

tangosol.coherence.management

JMX管理のモード。「management-config」を参照してください。

tangosol.coherence.management.readonly

JMX管理の読取り専用フラグ。「management-config」を参照してください。

tangosol.coherence.management.remote

リモートJMX管理の有効フラグ。「management-config」を参照してください。

tangosol.coherence.member

メンバー名。「member-identity」を参照してください。

tangosol.coherence.mode

操作モード。「license-config」を参照してください。

tangosol.coherence.override

オペレーション構成のオーバーライド・ファイル名。

tangosol.coherence.priority

優先度。「member-identity」を参照してください。

tangosol.coherence.process

プロセス名。「member-identity」を参照してください。

tangosol.coherence.proxy.threads

Coherence*Extendサービスのスレッド・プールのサイズ。「ProxyServiceのパラメータ」のthread-countサブ要素を参照してください。

tangosol.coherence.rack

ラック名。「member-identity」を参照してください。

tangosol.coherence.role

ロール名。「member-identity」を参照してください。

tangosol.coherence.security

キャッシュ・アクセス・セキュリティの有効フラグ。「security-config」を参照してください。

tangosol.coherence.security.keystore

セキュリティ・アクセス・コントローラのキーストア・ファイル名。「security-config」を参照してください。

tangosol.coherence.security.password

キーストアまたはクラスタの暗号化パスワード。「暗号化フィルタ」を参照してください。

tangosol.coherence.security.permissions

セキュリティ・アクセス・コントローラの権限ファイル名。「security-config」を参照してください。

tangosol.coherence.shutdownhook

シャットダウン・リスナー・アクション。「shutdown-listener」を参照してください。

tangosol.coherence.site

サイト名。「member-identity」を参照してください。

tangosol.coherence.tcmp.enabled

TCMPの有効フラグ。「packet-publisher」の<packet-publisher-enabled>サブ要素を参照してください。

tangosol.coherence.tcpring

TCPリングの有効フラグ。「tcp-ring-listener」を参照してください。

tangosol.coherence.ttl

マルチキャスト・パケットの有効時間(TTL)。「multicast-listener」の<mulitcast-listener-ttl>サブ要素を参照してください。

tangosol.coherence.wka

既知のIPアドレス。「well-known-addresses」を参照してください。

tangosol.coherence.wka.port

既知のIPポート。「well-known-addresses」を参照してください。


カスタムのシステム・プロパティの作成

任意のオペレーション構成要素またはキャッシュ構成要素に対してカスタムのシステム・プロパティを作成できます。事前構成されたシステム・プロパティの名前は必要に応じて変更することもできます。

システム・プロパティは、オーバーライドする要素にsystem-property属性を追加することによって定義されます。system-property属性の値には任意のユーザー定義名を使用できます。カスタムのシステム・プロパティは通常、オペレーション・オーバーライド・ファイル(tangosol-coherence-override.xmlなど)およびカスタムのキャッシュ構成ファイルに定義されます。

オペレーション要素に対するシステム・プロパティの定義

次の例では、オペレーション要素<join-timeout-milliseconds>に対してシステム・プロパティmulticast.join.timeoutを定義し、オペレーション・オーバーライド・ファイルに追加します。

<coherence>
   <cluster-config>
      <multicast-listener>
         <join-timeout-milliseconds system-property="multicast.join.timeout">30000
         </join-timeout-milliseconds>
      </multicast-listener>
   </cluster-config>
</coherence>

キャッシュ構成要素に対するシステム・プロパティの定義

次の例では、<cache-name>要素に対してシステム・プロパティcache.nameを定義し、カスタムのキャッシュ構成ファイルに追加します。

<cache-config>
  <caching-scheme-mapping>
    <cache-mapping>
      <cache-name system-property="cache.name"></cache-name>
      ...

事前定義されたシステム・プロパティの変更

次の例では、オペレーション要素<cluster-name>の事前定義されたシステム・プロパティ名を変更し、オペレーション・オーバーライド・ファイルに追加します。

<coherence>
   <cluster-config>
      <member-identity>
         <cluster-name system-property="myapp.cluster.name"></cluster-name>
      </member-identity>
   </cluster-config>
</coherence>

注意:

システム・プロパティを削除するには、要素からシステム・プロパティ属性を削除します。存在しないシステム・プロパティが実行時に使用されると、そのシステム・プロパティはCoherenceによって無視されます。