この章ではCoherenceで提供されるデフォルトの構成ファイルのそれぞれについて説明し、それらのファイルをアプリケーションやソリューションに応じてオーバーライドしてCoherenceの独自の構成ファイルを作成する手順について詳述します。
この章は次の各項で構成されています。
Coherenceでは、デフォルトのXML構成ファイル・セットがCOHERENCE_HOME
\lib\coherence.jar
ライブラリに用意されています。これらのファイルおよび関連するDTD(Document Type Definition)ファイルについては、Coherenceのライブラリをディレクトリに解凍すれば簡単に確認できます。
構成ファイルにはデフォルト値が設定されており、Coherenceを出荷状態のまま最小の変更で使用できます。これらのファイルは実例を示すことのみを目的としたものであり、再利用したり、特定のアプリケーションやソリューションで必要とされる変更を加えたりできます。ただし、構成ファイルを別に作成して、デフォルトの構成ファイルをオーバーライドすることをお薦めします。
デフォルトの構成ファイルの内容は、次のとおりです。
tangosol-coherence.xml
: このファイルにはオペレーション設定とランタイム設定が含まれており、クラスタ、通信、およびデータ管理の各サービスの作成と構成に使用されます。このファイルは一般にオペレーション・デプロイメント・ディスクリプタと呼ばれます。このファイルのDTDはcoherence.dtd
ファイルです。このファイルの要素の詳細は、付録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
: このファイルを使用して、クラスタ内で使用できる様々な種類のキャッシュを指定します。このファイルは一般にキャッシュ構成デプロイメント・ディスクリプタと呼ばれます。このファイルのDTDはcache-config.dtd
ファイルです。このファイルの要素の詳細は、付録B「キャッシュ構成の要素」を参照してください。
coherence-pof-config.xml
: このファイルは、POF(Portable Object Format)を使用してオブジェクトをシリアライズするときにカスタムのデータ型を指定するために使用します。このファイルは一般にPOF構成デプロイメント・ディスクリプタと呼ばれます。このファイルのDTDはpof-config.dtd
ファイルです。このファイルの要素の詳細は、付録D「POFユーザー定義型の構成要素」を参照してください。
管理構成ファイル: Coherence管理レポートを構成するために使用される一連のファイルです。これらのファイルは、Coherence JAR内の/reports
ディレクトリにあります。これらのファイルには、任意の数のレポート定義ファイルを参照するレポート・グループ構成ファイル(デフォルトではreport-group.xml
)が含まれます。各レポート定義ファイルにより、特定メトリックのための管理情報を表示するレポート・ファイルが作成されます。これらのファイルのDTDはそれぞれreport-group.dtd
およびreport-config.dtd
です。このファイルの要素の詳細は、付録A「オペレーション構成の要素」のmanagement-config要素の説明を参照してください。
ライセンス構成ファイル: 特定のCoherenceサーバーおよびクライアント・エディションにライセンスを付与するために使用される一連のファイルです。
オペレーション・デプロイメント・ディスクリプタtangosol-coherence.xml
にはオペレーション設定とランタイム設定が用意されており、クラスタ、通信、およびデータ管理の各サービスの作成と構成に使用されます。Coherenceは、実行時に、クラスパスで最初に見つかったtangosol-coherence.xml
ファイルを使用します。
Coherenceで提供されるデフォルトのオペレーション・デプロイメント・ディスクリプタはcoherence.jar
ライブラリのルートにあります。このファイルは必要に応じて変更できます。ただし、オペレーション・ランタイム構成時には、このファイルをオーバーライドすることをお薦めします。XMLのオーバーライド機能の詳細は、「XMLオーバーライド機能について」を参照してください。
この項は、次のトピックで構成されています。
オペレーション・ランタイムの構成手順の詳細は、第II部「データ・クラスタの使用方法」を参照してください。
デフォルトのtangosol-coherence.xml
ファイルの要素は、実行時のクラスパスにtangosol-coherence-override.xml
という名前のオペレーション・オーバーライド・ファイルを置くことによりオーバーライドされます。オーバーライド・ファイルの構造は、すべての要素がオプションであることを除き、オペレーション・デプロイメント・ディスクリプタと同一です。オーバーライド・ファイルには変更される要素のみが含まれます。欠落している要素は、tangosol-coherence.xml
ファイルからロードされます。
一般的に、オペレーション・オーバーライド・ファイルは、オペレーション・ランタイムを構成するための最も包括的な方法を提供し、開発環境と本番環境の両方で使用されます。
デフォルトのオペレーション・オーバーライド・ファイルを使用するには:
tangosol-coherence-override.xml
という名前のファイルを作成します。
ファイルを編集し、オーバーライドするオペレーション要素を追加します。
次の例では、クラスタ名を構成し、デフォルトのクラスタ名をオーバーライドします。
<?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>
ファイルを保存して閉じます。
オペレーション・オーバーライド・ファイルが実行時のクラスパスにあることを確認します。
次の例では、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
システム・プロパティを使用すると、異なるオペレーション構成間での切り替えを簡単に行えるため、開発およびテストの際に便利です。
オペレーション・オーバーライド・ファイルを指定するには:
テキスト・ファイルを作成します。
ファイルを編集し、オーバーライドするオペレーション要素を追加します。
次の例では、マルチキャスト・ポート番号を構成します。
<coherence> <cluster-config> <multicast-listener> <port system-property="tangosol.coherence.clusterport">3059</port> </multicast-listener> </cluster-config> </coherence>
ファイルをXMLファイルとして保存して閉じます。
オペレーション・オーバーライド・ファイルの名前を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
オーバーライド・ファイルを作成すると、特定のオペレーション要素の内容をオーバーライドできます。オーバーライド・ファイルは、ルート要素とオーバーライドされる要素が一致している必要があることを除き、オペレーション・デプロイメント・ディスクリプタと同一構造です。特定のオペレーション要素のためのオーバーライド・ファイルの定義の詳細は、「カスタムのオーバーライド・ファイルの定義」を参照してください。
一般的に、特定のオペレーション要素のためのオーバーライド・ファイルを使用すると、オペレーション・デプロイメント・ディスクリプタの修正可能な箇所を詳細に制御して、デプロイメント・シナリオごとに異なる構成を作成できます。
特定のオペレーション要素のためのオーバーライド・ファイルを定義するには:
「デフォルトのオペレーション・オーバーライド・ファイルの使用方法」の説明に従って、tangosol-coherence-override.xml
ファイルを作成します。
オーバーライドする要素にxml-override
属性を追加します。xml-override
属性の値はオーバーライド・ファイルの名前です。
次の例では、<cluster-config>
要素をオーバーライドするために使用するオーバーライド・ファイルcluster-config.xml
を定義します。
<coherence> <cluster-config xml-override="/cluster-config.xml"> ... </cluster-config> </coherence>
ファイルを保存して閉じます。
テキスト・ファイルを作成します。
ファイルを編集して、オーバーライドする要素に対応するXMLノードを追加します。XMLルートはオーバーライドする要素と一致させる必要があります。
ステップ2の例を使用して、<cluster-config>
要素をオーバーライドするための次のノードを作成し、マルチキャスト・ジョイント・タイムアウトを指定します。
<cluster-config> <multicast-listener> <join-timeout-milliseconds>4000</join-timeout-milliseconds> </multicast-listener> </cluster-config>
xml-override
属性で使用されている名前をファイルに付けてXMLファイルとして保存します。
両方のオーバーライド・ファイルが実行時のクラスパスにあることを確認します。
次の例では、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
ライブラリのルートに配置されています。このサンプル・ファイルは、デモ用のものです。サンプル・ファイルは必要に応じて変更または再利用できますが、サンプル・ファイルを使用するかわりにカスタムのキャッシュ構成デプロイメント・ディスクリプタを作成することをお薦めします。
注意:
|
この項は、次のトピックで構成されています。
キャッシュの構成手順の詳細は、第III部「キャッシュの使用方法」を参照してください。
Coherenceは、出荷状態では、クラスパスで最初に見つかったcoherence-cache-config.xml
ファイルを使用するように構成されています。coherence-cache-config.xml
ファイルを使用するには、このファイルが、クラスパスの、coherence.jar
ライブラリよりも上位にある必要があります。そうでない場合は、coherence.jar
にあるサンプルのcoherence-cache-config.xml
ファイルが使用されます。
デフォルトのキャッシュ構成ファイルを使用するには:
coherence.jar
にあるサンプルのcoherence-cache-config.xml
ファイルのコピーを作成して、それを別の場所に保存します。サンプル・ファイルのキャッシュ定義はデモ用です。このファイルを基にしてソリューション固有のキャッシュ構成を作成するようにしてください。
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>
要素のオペレーション・デプロイメント・ディスクリプタに指定されています。この要素をオーバーライドして、デフォルトのキャッシュ構成ファイルとは異なる名前と場所が使用されるように指定できます。
デフォルトのキャッシュ構成ファイルをオーバーライドするには:
coherence.jar
にあるデフォルトのキャッシュ構成ファイルcoherence-cache-config.xml
のコピーを作成して別名で保存します。
「デフォルトのオペレーション・オーバーライド・ファイルの使用方法」の説明に従って、tangosol-coherence-override.xml
ファイルを作成します。
オペレーション・オーバーライド・ファイルを編集して、ステップ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>
ファイルを保存して閉じます。
オペレーション・オーバーライド・ファイルが実行時のクラスパスにあることを確認します。
次の例では、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-config.xml
は、POF(Portable Object Format)を使用したシリアライズでのカスタム・ユーザー型の指定に使用されます。Coherenceは、実行時に、クラスパスで最初に見つかったpof-config.xml
ファイルを使用します。
注意:
|
Coherenceで提供されるデフォルトのPOF構成デプロイメント・ディスクリプタはcoherence.jar
ライブラリのルートにあります。このファイルは、特定のアプリケーションやソリューションに応じて、カスタマイズ、置換、または拡張してください。デフォルトでは、デプロイメント・ディスクリプタはcoherence-pof-config.xml
ファイルを参照します。このファイルには、Coherence固有のユーザー型が定義されており、POF構成ファイルを拡張または作成するときには常に必要となります。
この項は、次のトピックで構成されています。
POFユーザー型の構成手順の詳細は、第17章「Portable Object Formatの使用」を参照してください。
tangosol.pof.config
システム・プロパティを使用して、デフォルトのpof-config.xml
ファイルのかわりに使用するカスタムのPOF構成デプロイメント・ディスクリプタを指定します。システム・プロパティを使用すると、異なる構成間での切替えを簡単に行えるため、開発およびテストの際に便利です。
カスタムのPOF構成ファイルを指定するには:
XMLファイルを作成します。
ファイルを編集して、デフォルトの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>
ファイルを保存して閉じます。
そのファイルの名前を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
<include>
要素は、POF構成デプロイメント・ディスクリプタ内で、定義済のユーザー型を別のPOF構成デプロイメント・ディスクリプタ内に含めるために使用されます。これにより、ユーザー型をわかりやすく編成できるようになります(アプリケーション別や開発グループ別など)。
注意: 複数のPOF構成ファイルを組み合せる場合は、定義済の各ユーザー型が一意の<type-id> を持つ必要があります。型IDが含まれていない場合には、コンポジット構成ファイル内でのそのユーザー型の出現順序に基づいて型IDが指定されます。 |
複数のPOF構成ファイルを組み合せるには:
起動時にロードされる既存のPOF構成ファイルを開きます。
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>
ファイルを保存して閉じます。
必要があれば、POF構成ファイルが実行時のクラスパスにあることを確認します。
次の例では、COHERENCE_HOME
にあるPOF構成ファイルを使用するキャッシュ・サーバーを起動します。
java -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer
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"
管理構成には様々な構成ファイルが使用されます。これらには、次のものが含まれます。
report-group.xml
: レポート定義ファイルの名前と場所、およびレポートが書き込まれる出力ディレクトリのリストを示すために使用される、デフォルトのレポート・グループ構成ファイルです。このファイルの名前と場所は、オペレーション・デプロイメント・ディスクリプタに定義されます。デフォルトでは、このファイルはcoherence.jar
の/reports
ディレクトリにあります。/reports
ディレクトリには、その他にも、広範囲にわたるレポートを参照するレポート・グループ定義ファイルreport-all.xml
があります。カスタムのレポート・グループ定義ファイルも必要に応じて作成できます。
レポート定義ファイル: デフォルトのレポート定義ファイルのセットであり、どのファイルも特定メトリックのための管理情報を表示するレポート・ファイルを作成します。レポート定義ファイルを実行時に使用するには、そのファイルがレポート・グループ定義ファイルで参照される必要があります。デフォルトのレポート定義ファイルはcoherence.jar
の/reports
ディレクトリにあり、デフォルトのレポート・グループ定義ファイルによって参照されます。カスタムのレポート定義ファイルも必要に応じて作成できます。
custom-mbeans.xml
: デフォルトのMBean構成オーバーライド・ファイルです。このファイルを使用してCoherenceのJMX管理および監視フレームワーク内でカスタムMBean(アプリケーション・レベルのMBean)を定義します。これにより、クラスタ内のどのノードからでも任意のアプリケーション・レベルのMBeanを管理および監視できます。カスタムMBeanは任意のオペレーション・オーバーライド・ファイル内に定義できます。ただし、カスタムMBeanではなくMBean構成オーバーライド・ファイルを使用することをお薦めします。
この項は、次のトピックで構成されています。
管理構成の手順の詳細は、第VI部「Coherenceの管理」を参照してください。
デフォルトのレポート・グループ構成ファイルの名前と場所は、<management-config>
ノード内のオペレーション構成デプロイメント・ディスクリプタに指定されています。カスタムのレポート・グループ構成ファイルは、オペレーション・オーバーライド・ファイルまたはシステム・プロパティを使用して指定できます。
注意: レポート・グループ構成ファイルは、JMX管理が有効な場合にかぎりロードされます。次の例では、MBeanサーバーをホストするノード上でJMX管理を有効にします。 |
カスタムのレポート・グループ構成ファイルの名前と場所は、オペレーション・オーバーライド・ファイルを使用して指定できます。このメカニズムによって、レポート・グループ構成ファイルのデフォルトの名前と場所がオーバーライドされます。
デフォルトのレポート・グループ構成ファイルをオーバーライドするには:
XMLファイルを作成します。
次のようにファイルを編集して空の<report-group>
ノードを作成します。
<?xml version='1.0'?> <!DOCTYPE report-group SYSTEM "report-group.dtd"> <report-group> </report-group>
ファイルを保存して閉じます。
「デフォルトのオペレーション・オーバーライド・ファイルの使用方法」の説明に従って、tangosol-coherence-override.xml
ファイルを作成します。
ファイルを編集して、レポート・グループ構成ファイルの名前を指定する<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>
ファイルを保存して閉じます。
オペレーション・オーバーライド・ファイルが実行時のクラスパスにあることを確認します。
次の例では、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
オペレーション・デプロイメント・ディスクリプタtangosol-coherence.xml
は、オペレーション・オーバーライド・ファイルcustom-mbeans.xml
を定義するため(特に、カスタムのMBeansを定義するため)に使用されます。オーバーライド・ファイルの名前と場所は、MBean構成ファイルのシステム・プロパティを使用して指定することもできます。
カスタムMBeansは、オーバーライド・ファイルcustom-mbeans.xml
内に定義されます。Coherenceは、実行時に、クラスパスで最初に見つかったcustom-mbeans.xml
ファイルが使用されます。
デフォルトのMBean構成オーバーライド・ファイルを使用するには:
custom-mbeans.xml
という名前のファイルを作成します。
次のようにファイルを編集して空の<mbeans>
ノードを作成します。
<mbeans> </mbeans>
ファイルを保存して閉じます。
カスタムMBean構成オーバーライド・ファイルが実行時のクラスパスにあることを確認します。
次の例では、COHERENCE_HOME
にあるデフォルトのMBean構成オーバーライド・ファイルを使用するキャッシュ・サーバーを起動します。
java -cp COHERENCE_HOME;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer
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オーバーライド機能は、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
を定義するには、次のようにid
が3
の<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 事前構成されたシステム・プロパティ
システム・プロパティ | 設定 |
---|---|
|
キャッシュ構成ディスクリプタのファイル名。「configurable-cache-factory-config」を参照してください。 |
|
クラスタ名。「member-identity」を参照してください。 |
|
クラスタ(マルチキャスト)のIPアドレス。「multicast-listener」の |
|
クラスタ(マルチキャスト)のIPポート。「multicast-listener」の |
|
データ・バックアップ記憶域の場所。「DistributedCacheサービスのパラメータ」の |
|
データ・バックアップの数。「DistributedCacheサービスのパラメータ」の |
|
有効化されているローカル・パーティション管理。「DistributedCacheサービスのパラメータ」のlocal-storageサブ要素を参照してください。 |
|
スレッド・プールのサイズ。「DistributedCacheサービスのパラメータ」の |
|
パーティション送信のしきい値。「DistributedCacheサービスのパラメータ」の |
|
製品のエディション。「license-config」を参照してください。 |
|
起動サービスのスレッド・プールのサイズ。「InvocationServiceのパラメータ」の |
|
ユニキャストのIPアドレス。「unicast-listener」の |
|
ユニキャストのIPポート。「unicast-listener」の |
|
ユニキャストのIPポートの自動割当て。「unicast-listener」の |
|
ロギング先。「logging-config」の |
|
ロギング・レベル。「logging-config」の |
|
ログ出力文字制限。「logging-config」の |
|
マシン名。「member-identity」を参照してください。 |
|
JMX管理のモード。「management-config」を参照してください。 |
|
JMX管理の読取り専用フラグ。「management-config」を参照してください。 |
|
リモートJMX管理の有効フラグ。「management-config」を参照してください。 |
|
メンバー名。「member-identity」を参照してください。 |
|
操作モード。「license-config」を参照してください。 |
|
オペレーション構成のオーバーライド・ファイル名。 |
|
優先度。「member-identity」を参照してください。 |
|
プロセス名。「member-identity」を参照してください。 |
|
Coherence*Extendサービスのスレッド・プールのサイズ。「ProxyServiceのパラメータ」の |
|
ラック名。「member-identity」を参照してください。 |
|
ロール名。「member-identity」を参照してください。 |
|
キャッシュ・アクセス・セキュリティの有効フラグ。「security-config」を参照してください。 |
|
セキュリティ・アクセス・コントローラのキーストア・ファイル名。「security-config」を参照してください。 |
|
キーストアまたはクラスタの暗号化パスワード。「暗号化フィルタ」を参照してください。 |
|
セキュリティ・アクセス・コントローラの権限ファイル名。「security-config」を参照してください。 |
|
シャットダウン・リスナー・アクション。「shutdown-listener」を参照してください。 |
|
サイト名。「member-identity」を参照してください。 |
|
TCMPの有効フラグ。「packet-publisher」の |
|
TCPリングの有効フラグ。「tcp-ring-listener」を参照してください。 |
|
マルチキャスト・パケットの有効時間(TTL)。「multicast-listener」の |
|
既知のIPアドレス。「well-known-addresses」を参照してください。 |
|
既知の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によって無視されます。 |