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

前
 
次
 

3 構成の理解

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

この章には次の項が含まれます:

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

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

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

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

  • tangosol-coherence.xml - このファイルにはオペレーション設定とランタイム設定が含まれており、クラスタ、通信、およびデータ管理の各サービスの作成と構成に使用されます。このファイルは一般にオペレーション・デプロイメント・ディスクリプタと呼ばれます。このファイルのスキーマは、coherence-operational-config.xsdファイルです。オペレーション・デプロイメント・ディスクリプタの要素の完全なリファレンスは、付録A「オペレーション構成の要素」を参照してください。

  • tangosol-coherence-override-dev.xml - Coherenceが開発者モードで起動されると、このファイルによってtangosol-coherence.xmlファイルのオペレーション設定がオーバーライドされます。Coherenceはデフォルトで開発者モードで起動され、このファイルの設定が使用されます。このファイルの設定は開発環境に適しています。このオーバーライド・ファイルのスキーマ・ファイルとオペレーション・デプロイメント・ディスクリプタのスキーマは同一です。

  • tangosol-coherence-override-eval.xml - Coherenceが評価モードで起動されると、このファイルによってtangosol-coherence.xmlファイルのオペレーション設定がオーバーライドされます。このファイルの設定はCoherenceの評価に適しています。このオーバーライド・ファイルのスキーマ・ファイルとオペレーション・デプロイメント・ディスクリプタのスキーマは同一です。

  • tangosol-coherence-override-prod.xml - Coherenceが本番モードで起動されると、このファイルによってtangosol-coherence.xmlファイルのオペレーション設定がオーバーライドされます。このファイルの設定は本番環境に適しています。このオーバーライド・ファイルのスキーマ・ファイルとオペレーション・デプロイメント・ディスクリプタのスキーマは同一です。

  • coherence-cache-config.xml - このファイルを使用して、クラスタ内で使用できる様々な種類のキャッシュを指定します。このファイルは一般にキャッシュ構成デプロイメント・ディスクリプタと呼ばれます。このファイルのスキーマは、coherence-cache-config.xsdファイルです。このファイルの要素の完全なリファレンスは、付録B「キャッシュ構成の要素」を参照してください。

  • coherence-pof-config.xml - このファイルは、POF (Portable Object Format)を使用してオブジェクトをシリアライズするときにカスタムのデータ型を指定するために使用します。このファイルは一般にPOF構成デプロイメント・ディスクリプタと呼ばれます。このファイルのスキーマは、coherence-pof-config.xsdファイルです。このファイルの要素の完全なリファレンスは、付録C「POFユーザー定義型の構成要素」を参照してください。

  • 管理構成ファイル - Coherence管理レポートを構成するために使用される一連のファイルです。これらのファイルは、coherence.jarの中の/reportsディレクトリ内にあります。これらのファイルには、任意の数のレポート定義ファイルを参照するレポート・グループ構成ファイル(デフォルトではreport-group.xml)が含まれます。各レポート定義ファイルにより、特定メトリックのセットに基づいて管理情報を表示するレポート・ファイルが作成されます。これらのファイルのスキーマは、それぞれcoherence-report-config.xsdファイルおよびcoherence-report-group-config.xsdファイルです。これらの構成ファイルの要素のリファレンスおよびレポートの使用方法の詳細は、『Oracle Coherenceのマネージメント』を参照してください。

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

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

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

この項には次のトピックが含まれます:

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

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

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

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

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

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

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

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

    <?xml version='1.0'?>
    
    <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
       xsi:schemaLocation="http://xmlns.oracle.com/coherence/
       coherence-operational-config coherence-operational-config.xsd">
       <cluster-config>
          <member-identity>
             <cluster-name system-property="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ファイルの場所をクラスパスに追加してください。

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

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

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

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

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

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

    次の例では、マルチキャストの参加タイムアウトを構成します。

    <?xml version='1.0'?>
    
    <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
       xsi:schemaLocation="http://xmlns.oracle.com/coherence/
       coherence-operational-config coherence-operational-config.xsd">
       <cluster-config>
          <multicast-listener>
             <join-timeout-milliseconds>6000</join-timeout-milliseconds>
          </multicast-listener>
       </cluster-config>
    </coherence>
    
  3. ファイルをXMLファイルとして保存して閉じます。

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

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

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

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

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

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

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

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

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

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

    <?xml version='1.0'?>
    
    <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
       xsi:schemaLocation="http://xmlns.oracle.com/coherence/
       coherence-operational-config coherence-operational-config.xsd">
       <cluster-config xml-override="/cluster-config.xml">
       ...
       </cluster-config>
    </coherence>
    
  3. ファイルを保存して閉じます。

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

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

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

    <?xml version='1.0'?>
    
    <cluster-config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
       xsi:schemaLocation="http://xmlns.oracle.com/coherence/
       coherence-operational-config coherence-operational-config.xsd">
       <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
    

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

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つのオーバーライド・ファイルは、特定のオペレーション要素のために定義されましたが、実行時には見つかることもロードされることもありませんでした。

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

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


注意:

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

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


この項には次のトピックが含まれます:

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

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

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
    

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

キャッシュ構成デプロイメント・ディスクリプタのデフォルトの名前と場所は、<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を指定します。

    <?xml version='1.0'?>
    
    <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
       xsi:schemaLocation="http://xmlns.oracle.com/coherence/
       coherence-operational-config coherence-operational-config.xsd">
       <configurable-cache-factory-config>
          <init-params>
             <init-param>
                <param-type>java.lang.String</param-type>
                <param-value system-property="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
    

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

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

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

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

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

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

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

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

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

3.4 POF構成ファイルの指定

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


注意:

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

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


この項には次のトピックが含まれます:

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

3.4.1 デフォルトのPOF構成ファイルのオーバーライド

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

POF構成ファイルは、個別のアプリケーションにあわせてカスタマイズする必要があります。デフォルトのPOF構成ファイルは、coherence-pof-config.xmlファイルを参照してください。これには、Coherence固有のユーザー型が定義されており、POF構成ファイルを作成するときには常に必要となります。

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

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

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

    <?xml version="1.0"?>
    
    <pof-config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://xmlns.oracle.com/coherence/coherence-pof-config"
       xsi:schemaLocation="http://xmlns.oracle.com/coherence/coherence-pof-config
       coherence-pof-config.xsd">
       <user-type-list>
          <include>coherence-pof-config.xml</include>
       </user-type-list>
    </pof-config>
    
  3. pof-config.xmlという名前でファイルを保存して閉じます。

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

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

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

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

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

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

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

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

    <?xml version="1.0"?>
    
    <pof-config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://xmlns.oracle.com/coherence/coherence-pof-config"
       xsi:schemaLocation="http://xmlns.oracle.com/coherence/coherence-pof-config
       coherence-pof-config.xsd">
       <user-type-list>
          <include>coherence-pof-config.xml</include>
       </user-type-list>
    </pof-config>
    
  3. ファイルを保存して閉じます。

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

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

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

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

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


注意:

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

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

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

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

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

    <?xml version='1.0'?>
    
    <pof-config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://xmlns.oracle.com/coherence/coherence-pof-config"
       xsi:schemaLocation="http://xmlns.oracle.com/coherence/coherence-pof-config
       coherence-pof-config.xsd">
       <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
    

3.4.4 ロードされた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"

3.5 管理構成ファイルの指定

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

  • レポート・グループ構成ファイル - レポート・グループ構成ファイルは、レポート定義ファイルの名前と場所、およびレポートが書き込まれる出力ディレクトリのリストを示すために使用されます。このファイルの名前と場所は、オペレーション・デプロイメント・ディスクリプタに定義されます。デフォルトでは、report-group.xmlファイルが使用され、このファイルはcoherence.jar/reportsディレクトリに存在します。必要に応じて、追加のレポート・グループ構成ファイルを指定して、カスタム・レポート・グループ・ファイルを作成することもできます。

  • レポート構成ファイル - レポート構成ファイルでは、レポートを定義し、特定メトリックのセットに基づいて管理情報を表示するレポート・ファイルが作成されます。レポート構成ファイルは、実行時に使用されるレポート・グループ構成ファイルで参照される必要があります。デフォルトのレポート構成ファイルはcoherence.jar/reportsディレクトリにあり、デフォルトのレポート・グループ構成ファイルによって参照されます。カスタムのレポート構成ファイルも必要に応じて作成できます。

  • custom-mbeans.xml - デフォルトのMBean構成オーバーライド・ファイルです。このファイルを使用してCoherenceのJMX管理およびモニタリング・フレームワーク内でカスタムMBean(アプリケーション・レベルのMBean)を定義します。これにより、クラスタ内のどのノードからでも任意のアプリケーション・レベルのMBeanを管理およびモニターできます。カスタムMBeanはオペレーション・オーバーライド・ファイル内に定義できます。ただし、一般的にはカスタムMBeanではなくMBean構成オーバーライド・ファイルが使用されます。

この項には次のトピックが含まれます:

Coherenceの管理方法の詳細は、『Oracle Coherenceのマネージメント』を参照してください。

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

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


注意:

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

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

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

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

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

  2. 次のようにファイルを編集して<report-group>ノードを作成します。この例では、単一のレポートを構成します。

    <?xml version='1.0'?>
    
    <report-group xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://xmlns.oracle.com/coherence/coherence-report-group-config"
       xsi:schemaLocation="http://xmlns.oracle.com/coherence/
       coherence-report-group-config coherence-report-group-config.xsd">
       <frequency>1m</frequency>
       <output-directory>./</output-directory>
       <report-list>
          <report-config>
             <location>reports/report-node.xml</location>
          </report-config>
       </report-list>
    </report-group>
    
  3. ファイルを保存して閉じます。

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

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

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

    <?xml version='1.0'?>
    
    <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
       xsi:schemaLocation="http://xmlns.oracle.com/coherence/
       coherence-operational-config coherence-operational-config.xsd">
       <management-config>
          <managed-nodes system-property="coherence.management">
             all</managed-nodes>
          <reporter>
             <configuration system-property="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
    

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

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

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

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

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

3.5.2 MBean構成ファイルの指定

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

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

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

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

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

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

    <?xml version='1.0'?>
    
    <mbeans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
       xsi:schemaLocation="http://xmlns.oracle.com/coherence/
       coherence-operational-config coherence-operational-config.xsd">
    </mbeans>
    
  3. ファイルを保存して閉じます。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

3.6 スキーマ検証の無効化

Coherenceでは、スキーマ検証を使用して、構成ファイルが個々のスキーマ定義に準拠していることを確認します。スキーマ参照を含む構成ファイルは、構成ファイルがロードされると、スキーマに対して自動的に検証されます。検証エラーが発生すると即座に失敗となり、エラーの原因となる要素を示すエラー・メッセージが出力されます。ベスト・プラクティスとして、スキーマ検証は常に使用することをお薦めします。

スキーマ検証は、必要に応じて無効化できます。スキーマ検証を無効化するには、構成ファイルからxsi:schemaLocation属性を削除します。次の例では、スキーマ参照を含まず、ロード時に検証されないtangosol-coherence-override.xmlファイルを作成します。

<?xml version='1.0'?>

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

注意:

スキーマ検証を無効にすると、XMLが不正な場合にCoherenceは失敗します。構文エラーは無視されるため、すぐに判明しない場合があります。

3.7 XMLオーバーライド機能の理解

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

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

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

この項には次のトピックが含まれます:

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

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

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

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

  • cache-factory-config.xml - このオーバーライド・ファイルは<configurable-cache-factory-config>要素に定義されており、構成キャッシュ・ファクトリをカスタマイズするために使用されます。このオーバーライド・ファイルは通常コンテナの統合をサポートするためにのみ使用されます。一般的に、<configurable-cache-factory-config>要素をオーバーライドすることはありません。

  • cache-factory-builder-config.xml - このオーバーライド・ファイルは<cache-factory-builder-config>要素に対して定義されており、キャッシュ・ファクトリ・ビルダーをカスタマイズするために使用されます。このオーバーライド・ファイルは通常コンテナの統合をサポートするためにのみ使用されます。一般的に、<cache-factory-builder-config>要素をオーバーライドすることはありません。

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

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
   xsi:schemaLocation="http://xmlns.oracle.com/coherence/
   coherence-operational-config coherence-operational-config.xsd">
   <cluster-config>
      <member-identity>
         <cluster-name system-property="coherence.cluster">MyCluster
         </cluster-name>
      </member-identity>
   </cluster-config>
</coherence>

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

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
   xsi:schemaLocation="http://xmlns.oracle.com/coherence/
   coherence-operational-config coherence-operational-config.xsd">
   <cluster-config>
      <services>
         <service id="3">
            <init-params>
               <init-param id="4">
                  <param-name>local-storage</param-name>
                  <param-value system-property="coherence.distributed.
                     localstorage">false</param-value>
               </init-param>
            </init-params>
         </service>
      </services>
   </cluster-config>
</coherence>

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

<mbeans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
   xsi:schemaLocation="http://xmlns.oracle.com/coherence/
   coherence-operational-config coherence-operational-config.xsd">
   <mbean id="100">
      <mbean-class>com.oracle.customMBeans.Query</mbean-class>
      <mbean-name>type=Query</mbean-name>
      <enabled>true</enabled>
   </mbean>
</mbeans>

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

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

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

オーバーライド・ファイルは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属性を追加します。

<?xml version='1.0'?>

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

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

<?xml version='1.0'?>

<cluster-config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
   xsi:schemaLocation="http://xmlns.oracle.com/coherence/
   coherence-operational-config coherence-operational-config.xsd">
   <multicast-listener>
      <join-timeout-milliseconds>4000</join-timeout-milliseconds>
   </multicast-listener>
</cluster-config>

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

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

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
   xsi:schemaLocation="http://xmlns.oracle.com/coherence/
   coherence-operational-config coherence-operational-config.xsd">
   <cluster-config>
      <services>
         <service id="3" xml-override="/dist-service-config.xml">
         </service>
      </services>
   </cluster-config>
</coherence>

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

<?xml version='1.0'?>

<service id="3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
   xsi:schemaLocation="http://xmlns.oracle.com/coherence/
   coherence-operational-config coherence-operational-config.xsd">
   <init-params>
      <init-param id="1">
         <param-name>standard-lease-milliseconds</param-name>
         <param-value>2</param-value>
      </init-param>
   </init-params>
</service>

注意:

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

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

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

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

<?xml version='1.0'?>

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

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

<?xml version='1.0'?>

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

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

<?xml version='1.0'?>

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

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

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

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

この項には次のトピックが含まれます:

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

Coherenceでは、様々なオペレーション設定およびキャッシュ設定をオーバーライドするために使用される多数のシステム・プロパティが事前構成されています。表D-1に事前構成されたすべてのシステム・プロパティを示してあります。事前構成されたシステム・プロパティは、デフォルトのデプロイメント・ディスクリプタtangosol-coherence.xmlおよびcoherence-cache-config.xmlにそれぞれsystem-property属性を使用して定義されています。

たとえば、事前構成されたcoherence.log.levelシステム・プロパティは、次のようにtangosol-coherence.xmlファイル内に定義されています。

<logging-config>
   ...
   <severity-level system-property="coherence.log.level">5
   </severity-level>
   ...
</logging-config>

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

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

注意:

オペレーション・オーバーライド・ファイルを使用する場合、およびカスタム・キャッシュ構成ファイルを作成する場合、事前構成されたシステム・プロパティは常にオーバーライドされる要素とともに配置する必要があります。そうしないと、そのプロパティは使用できなくなります。

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

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

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

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

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

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
   xsi:schemaLocation="http://xmlns.oracle.com/coherence/
   coherence-operational-config coherence-operational-config.xsd">
   <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を定義し、カスタムのキャッシュ構成ファイルに追加します。

<?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">
   <caching-scheme-mapping>
    <cache-mapping>
      <cache-name system-property="cache.name"></cache-name>
      ...

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

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

<?xml version='1.0'?>

<coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
   xsi:schemaLocation="http://xmlns.oracle.com/coherence/
   coherence-operational-config coherence-operational-config.xsd">
   <cluster-config>
      <member-identity>
         <cluster-name system-property="myapp.cluster.name"></cluster-name>
      </member-identity>
   </cluster-config>
</coherence>

注意:

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