|
|
WebOTX Manual V10.1 (第7版) 目次を表示 |
インメモリデータグリッド連携に関する設定について説明します。
インメモリデータグリッド連携の設定項目については全てMO化されています。項目の設定方法については「 各サービスの属性」を参照してください。
ドメイン共通の設定です。この設定を変更した場合、ドメインを再起動することにより反映されます。
Dottedname : server.data-grids
| 属性名 (attribute-name) |
説明 | 既定値 |
|---|---|---|
| Jgroupsファイル名 (Infinispan)
[ infinispan-jgroups-file ] |
このドメインで使用する、${INSTANCE_ROOT}/config/datagrid/infinispan ディレクトリにある Infinispan の設定ファイルを指定します。 | webotx-jgroups-udp.xml |
| クラスタ名 (Infinispan)
[ infinispan-cluster-name ] |
このドメインで使用する、Infinispan のクラスタ名を指定します。 | webotx-infinispan-cluster1 |
データグリッドごとの設定です。
Dottedname : server.data-grids.data-grid. name
nameはデータグリッド名が設定されます。
| 属性名
(attribute-name) |
説明 | 既定値 |
|---|---|---|
| 名前
[ name ] |
DataGrid の名前です。セッションレプリケーションや永続化サービスの data-grid-name としてこの名前を指定します。 | なし |
| タイプ
[ type ] |
DataGrid のタイプを指定します。指定できる値は以下です。
- disabled - infinispan disabled 以外の値に設定する場合、それぞれの連携に必要なライブラリを配置していないとエラーになります。配置については [ 提供機能 > インメモリデータグリッド連携 > 事前準備 ] を参照してください。 |
disabled |
| アーキタイプ
[ archetype ] |
DataGridのアーキタイプを指定します。指定できる値は以下です。
- standard (標準) - high-performance (性能重視) - high-available (可用性重視) この属性を変更すると、他の属性も連動して変更されます。「アーキタイプによる既定値の変更」を参照してください。 |
standard |
Infinispan 用の設定です。タイプが Infinispan の場合のみ有効です。
| 属性名
(attribute-name) |
説明 | 既定値 |
|---|---|---|
| キャッシュモード (Infinispan)
[ infinispan-cache-mode ] |
キャッシュモードを指定します。指定できる値は以下です。
- DIST_SYNC (分散同期モード) - DIST_ASYNC (分散非同期モード) - REPL_SYNC (複製同期モード) - REPL_ASYNC (複製非同期モード) |
DIST_SYNC |
| 非同期マーシャリング (Infinispan)
[ infinispan-async-marshalling ] |
キャッシュモードが DIST_ASYNC または REPL_ASYNC の場合のみ有効です。非同期マーシャリングを使用するかどうかを指定します。使用する場合、呼び出しはすぐにリターンされますが、命令のリオーダーが行なわれる場合があります。 | false |
| 非同期キューの使用 (Infinispan)
[ infinispan-async-use-repl-queue ] |
キャッシュモードが DIST_ASYNC または REPL_ASYNC の場合のみ有効です。true の場合、全ての非同期通信はレプリケーションキューに登録するように強制し、定期的にバッチ処理で送出されます。 | false |
| 非同期キューの動作頻度 (Infinispan)
[ infinispan-async-repl-queue-interval ] |
キャッシュモードが DIST_ASYNC または REPL_ASYNC で非同期キューの使用が true の場合のみ有効です。レプリケーションキューをフラッシュするスレッドの動作頻度をミリ秒で指定します。 | 5000 |
| 非同期キューの最大要素数 (Infinispan)
[ infinispan-async-repl-queue-max-elements ] |
キャッシュモードが DIST_ASYNC または REPL_ASYNC で非同期キューの使用が true の場合のみ有効です。要素数がこの値に達したことを契機としてレプリケーションキューをフラッシュします。 | 1000 |
| 同期タイムアウト (Infinispan)
[ infinispan-sync-repl-timeout ] |
キャッシュモードが DIST_SYNC または REPL_SYNC の場合のみ有効です。リモート呼び出しの応答が返るまでの最大待ち時間を指定します (ミリ秒)。待ち時間に達すると呼び出しは中止され、例外が発生します。 | 15000 |
| 起動時データフェッチ (Infinispan)
[ infinispan-state-transfer-fetch-in-memory-state ] |
trueの場合、キャッシュ起動時に近隣のキャッシュからデータをフェッチします。キャッシュはウォームアップ状態で起動しますが、起動性能が低下します。
分散モードではこのときにキーの所有者の変更も行われるため、これが false の場合はキーの所有者がキャッシュエントリごとの複製数より少なくなる可能性があります。 |
true |
| 起動時待ち合わせ (Infinispan)
[ infinispan-state-transfer-await-initial-transfer ] |
true の場合、最初にキャッシュの取得が行なわれる時、近隣のキャッシュから状態を取得できるまでブロックされます。 | true |
| 状態転送チャンクサイズ (Infinispan)
[ infinispan-state-transfer-chunk-size ] |
一度にステート転送するエントリ数を指定します。0以下にすると全てのエントリを一度に転送しますが、非推奨です。 | 10000 |
| 状態転送タイムアウト (Infinispan)
[ infinispan-state-transfer-timeout ] |
近隣キャッシュからステートを受け取る際の最大待ち時間を指定します (ミリ秒)。 | 240000 |
| L1キャッシュの有効化 (Infinispan)
[ infinispan-l1-enabled ] |
trueの時、L1キャッシュを使用します。
キャッシュモードが DIST_SYNC または DIST_ASYNC の場合有効です。 |
false |
| L1 キャッシュ無効化閾値 (Infinispan)
[ infinispan-l1-invalidation-threshold ] |
L1 キャッシュを無効化する時にマルチキャストを用いるかユニキャストを用いるかの閾値を指定します。
-1 が指定されたとき、ユニキャストのみが用いられます。0 が指定されたとき、マルチキャストのみが用いられます。 L1 キャッシュ使用時のみ有効です。 |
0 |
| L1 キャッシュ最大存在期間 (Infinispan)
[ infinispan-l1-lifespan ] |
L1 キャッシュのあるエントリの最大存在期間を指定します (ミリ秒)。
L1 キャッシュ使用時のみ有効です。 |
60000 |
| L1 キャッシュクリンアップ頻度 (Infinispan)
[ infinispan-l1-cleanup-task-frequency ] |
L1 キャッシュの古くなったエントリのクリンアップ頻度を指定します (ミリ秒)。
L1 キャッシュ使用時のみ有効です。 |
60000 |
| キャッシュエントリ毎の複製数 (Infinispan)
[ infinispan-hash-num-owners ] |
キャッシュエントリごとのクラスタ中の複製数 (1以上) を指定します。
キャッシュモードが DIST_SYNC または DIST_ASYNC の場合有効です。 |
2 |
| ハッシュ空間セグメント数 (Infinispan)
[ infinispan-hash-num-segments ] |
ハッシュ空間のセグメント数を指定します。1 以上の値を指定します。 | 60 |
| デッドロック検出有効化 (Infinispan)
[ infinispan-dead-lock-detection-enabled ] |
trueの場合、デッドロック検出機能を有効にします。 | false |
| デッドロック検出頻度 (Infinispan)
[ infinispan-dead-lock-detection-spin-duration ] |
デッドロック検出機能が有効な場合のみ有効です。デッドロック検出を行なう頻度を指定します (ミリ秒)。 | 100 |
| エビクション機能アルゴリズム (Infinispan)
[ infinispan-eviction-strategy ] |
エビクション (エントリ数が閾値を越えた時削除する) 機能で使うアルゴリズムを指定します。NONE の場合、エビクション機能が無効になります。
有効な値は、NONE, UNORDERED, LRU, LIRS |
NONE |
| エビクション機能スレッドポリシー (Infinispan)
[ infinispan-eviction-thread-policy ] |
エビクション機能のスレッドポリシーを指定します。
DEFAULT, PIGGYBACK |
DEFAULT |
| エビクション機能最大エントリ数 (Infinispan)
[ infinispan-eviction-max-entries ] |
エビクション機能のための最大エントリ数を指定します。エントリ数がこれを超えた時、エビクションが行なわれます。-1 の時はエビクションが行なわれません。 | -1 |
| 最大存在期間 (Infinispan)
[ infinispan-expiration-lifespan ] |
キャッシュエントリの最大存在期間を指定します (ミリ秒)。これを超えたエントリは期限切れで破棄されます。-1 の場合、期限切れ破棄が行なわれません。 | -1 |
| 最大アイドル期間 (Infinispan)
[ infinispan-expiration-max-idle ] |
キャッシュエントリの最大アイドル期間を指定します (ミリ秒)。この期間を超えてアクセスされないエントリは期限切れで破棄されます。-1 の場合、期限切れ破棄が行なわれません。 | -1 |
| 期限切れエントリ刈り取りスレッドの有効化 (Infinispan)
[ infinispan-expiration-enable-reaper ] |
true の場合、エントリの期限切れ判定スレッドが動作します。この設定に関わらず、エントリにアクセスする際に期限切れ判定が行われます。 | true |
| 期限切れエントリ判定頻度 (Infinispan)
[ infinispan-expiration-wake-up-interval ] |
期限切れ判定の頻度を指定します (ミリ秒)。-1の場合、定期的な期限切れ判定が行なわれなくなります。 | 60000 |
| ロックコンカレンシーレベル (Infinispan)
[ infinispan-locking-concurrency-level ] |
ロックコンテナの並列度を指定します。 | 32 |
| ロック隔離レベル (Infinispan)
[ infinispan-locking-isolation-level ] |
キャッシュのロック隔離レベルを指定します。有効な値は REPEATABLE_READ, READ_COMMITTED | READ_COMMITTED |
| ロック取得タイムアウト (Infinispan)
[ infinispan-locking-lock-acquisition-timeout ] |
特定のロックを取得するための最大待ち時間を指定します (ミリ秒) | 10000 |
| ストライピングロックの使用 (Infinispan)
[ infinispan-locking-use-lock-striping ] |
true の場合、ロックが必要な全てのエントリのための共有ロックプールが管理されます。そうでなければ、キャッシュ中のエントリ毎にロックが作成されます。ロックストライプを有効にすると、メモリ使用量が下がりますが、システムの並列度が低下する場合があります。 | false |
上記既定値はアーキタイプが standard の場合のものです。データグリッド作成時のアーキタイプによって既定値が以下のように設定されます。 また、作成済みのデータグリッドのアーキタイプを変更した場合にも、以下の値に設定変更されます。
| 属性名 | standard | high-performance | high-available |
|---|---|---|---|
| キャッシュモード (Infinispan)
[ infinispan-cache-mode ] |
DIST_SYNC | DIST_ASYNC | REPL_SYNC |
| L1キャッシュの有効化 (Infinispan)
[ infinispan-l1-enabled ] |
false | true | false |
以下は、MO で設定可能な永続化サービス設定項目の一覧です。
Dottedname :server.persistence-service
| 属性名
(attribute-name) |
説明 | 既定値 |
|---|---|---|
| L2 キャッシュで使用するデータグリッド
[ data-grid-name ] |
L2 キャッシュで使用するデータグリッド名を指定します。 WebOTX 上で動作する JPA アプリケーションの L2 キャッシュのバックボーンとなるデータグリッド製品の既定値となります。
この方法で設定を変更した場合は、アプリケーションの再配備をすることなくデータグリッドの変更が可能です。 ただし、変更前と変更後でキャッシュデータは引き継がれません。 「データグリッド」の設定で、登録した「データグリッド名」を指定してください。何も指定しない場合は EclipseLink の L2 キャッシュを使用します。 尚、データグリッド製品の指定は「データグリッド」の設定で行います。 データグリッドにデータグリッド製品が指定されていない場合は、EclipseLink の L2 キャッシュを使用します。 |
なし |
| 属性名
(attribute-name) |
説明 | 既定値 |
|---|---|---|
| トランザクションタイプ
[ transaction-type ] |
永続化ユニットのトランザクションタイプを指定します。
値は、"JTA" または "RESOURCE_LOCAL" を指定してください。 |
なし |
| JTAデータソース
[ jta-datasource ] |
有効なJTAデータソース名を指定します。
ターゲットコンテナまたは javax.sql.DataSource のインスタンスでデータソースを 見つけることができる JNDI リソース名を指定してください。 |
なし |
| 非 JTA データソース
[ non-jta-datasource ] |
非 JTA データソース名を指定します。
ターゲットコンテナまたは javax.sql.DataSource のインスタンスでデータソースを 見つけることができる JNDI リソース名を指定してください。 |
なし |
| ステートメントのキャッシュサイズ
[ cache-statements-size ] |
ステートメントのキャッシュサイズを指定します。
内部ステートメント・キャッシュを使用するときに保有されるステートメントの数を指定します。 値はゼロ、もしくは正の整数である必要があります。 |
50 |
| ステートメントのキャッシュ
[ cache-statements ] |
ステートメントのキャッシュを行うか指定します。
JDBC ステートメントをキャッシュするかどうかを指定します。 EclipseLink の内部接続プーリングを使用している場合は、使用することを推奨します。 有効な値: true:内部ステートメント・キャッシュを有効にします。 false:内部ステートメント・キャッシュを無効にします。 例:persistence.xml ファイルの例:property Map propertiesMap.put(PersistenceUnitProperties.CACHE_STATEMENTS、"false"); |
false (行わない) |
| キャッシュサイズ
[ cache-size ] |
キャッシュサイズを指定します。
すべてのエンティティに適用されます。同じプレフィックスを持つ個々の エンティティプロパティによってオーバーライドされる場合があります。 ほとんどのキャッシュタイプの場合、サイズは初期サイズではなく、固定または最大サイズです。 CacheType.SoftCache と CacheType.HardCache のサイズは、サブキャッシュサイズです。 |
100 |
| キャッシュタイプ
[ cache-type ] |
キャッシュタイプの既定値を指定します。 すべてのエンティティに適用されます。
同じプレフィックスを持つ個々のエンティティプロパティによってオーバーライドされる場合があります。 キャッシュの共有を行い、エンティティをキャッシュしたくない場合は、キャッシュのタイプを設定します。 次のいずれかを設定します。 Full: 強参照キャッシュ。永続的にキャッシュされます。 Weak: 弱参照キャッシュ。弱可到達の場合、ガーベージコレクションによる回収の対象になります。 Soft: ソフト参照キャッシュ。メモリ残量の低下時にキャッシュアウトする参照形態です。リソースの消費率や生存期間に応じて,ガーベージコレクションによる回収の対象になります。 SoftWeak: ソフト参照と弱参照でキャッシュします。 HardWeak: 強参照と弱参照でキャッシュします。 None: エンティティオブジェクトをキャッシュしません。 |
SoftWeak |
| キャッシュの共有
[ cache-shared ] |
キャッシュの共有を行うか指定します。
すべてのエンティティに適用されます。 同じプレフィックスを持つ個々のエンティティプロパティによってオーバーライドされる場合があります。 エンティティをキャッシュしたくない場合は、"false (行わない)"に設定してください |
true (行う) |
| テーブル作成時のサフィックス
[ table-creation-suffix ] |
テーブル作成時のサフィックス文字列を指定します。 | なし |
| ターゲットデータベース
[ target-database ] |
ターゲットデータベース名を指定します。
AUTO の場合、EclipseLink がデータベースと JDBC メタデータにアクセスして、使用するデータベースを決定します。 WebOTX でサポートする JDBC については、 [ 入門ガイド > JDBC ] を参照してください。 |
AUTO |
| ウィービング
[ weaving ] |
ウィービングを指定します。
ウィービングは、コンパイル済のJavaクラスのバイトコードを操作する方法です。 JPA エンティティと Plain Old Java Object(POJO) クラスの両方のパフォーマンスを向上するために、 内部最適化、遅延ロード、強力なリレーションシップ上の間接参照、変更追跡、フェッチグループ などの操作にウィービングを使用します。 以下の値が指定できます TRUE: 動的ウィービングを行います。 FALSE: ウィービングを無効化します。 STATIC: 静的ウィービングを行います。 |
true (動的ウィービングを行う) |
| 内部最適化のためのウィービング
[ weaving-internal ] |
内部最適化のためのウィービングを行うか指定します。 | true (行う) |
| 遅延ロードのためのウィービング
[ weaving-lazy ] |
遅延ロードのためのウィービングを行うか指定します。
|
true (行う) |
| 強力なリレーションシップ上の間接参照のためのウィービング
[ weaving-eager ] |
強力なリレーションシップ上の間接参照のためのウィービングを行うか指定します。 | false (行わない) |
| 変更追跡のためのウィービング
[ weaving-change-tracking ] |
変更追跡のためのウィービングを行うか指定します。 | true (行う) |
| フェッチグループのためのウィービング
[ weaving-fetchgroups ] |
フェッチグループのためのウィービングを行うか指定します。 | true (行う) |
| 永続化コンテキストの参照モード
[ persistence-context-reference-mode ] |
永続化コンテキストの参照モードを指定します。
以下のモードが指定できます。 HARD: ハード参照を使用してすべてのオブジェクトが参照されます。 WEAK: アクティブ属性の変更追跡をサポートするオブジェクトへの参照は、弱参照によって保持されます。 FORCE_WEAK: 変更追跡の対象外であるオブジェクトを含むすべてのオブジェクトは、弱参照によって保持されます。 |
HARD |
| 悲観的ロックのタイムアウト時間
[ pessimistic-lock-timeout ] |
悲観的ロックのタイムアウト時間 (ミリ秒) を指定します。
悲観的ロックでのタイムアウトを設定します。データベースクエリは、タイムアウトを 超えた場合データベースクエリを終了して例外が返されます。 有効な値は、0 またはそれ以上の整数です。 0を指定した場合は、タイムアウトしません。 |
0 (タイムアウトしない) |
| クエリ実行時のタイムアウト時間
[ query-timeout ] |
クエリ実行時のタイムアウト時間 (ミリ秒) を指定します。
デフォルトのクエリタイムアウト値を設定します。 有効な値は、0 またはそれ以上の整数です。 0を指定した場合は、タイムアウトしません。 |
0 (タイムアウトしない) |
| 属性名
(attribute-name) |
説明 | 既定値 |
|---|---|---|
| 性能情報採取ステータス
[ performance-statistics-status ] |
性能情報採取ステータスです。以下の値が設定されます。
停止 起動中 |
なし |
| 性能情報採取フラグ
[ performance-statistics-flag ] |
性能情報採取を行うか指定します。 | false (行わない) |
以下は、MO で設定可能なデータプリロード設定項目の一覧です。
Dottedname :server.persistence-service.data-pre-loads
| 属性名
(attribute-name) |
説明 | 既定値 |
|---|---|---|
| データプリロードを実行する
[ data-pre-load-enabled ] |
サービスの開始時にデータのプリロードを実行するか指定します。
|
false (行わない) |
| データプリロードのタイムアウトまでの時間
[ data-pre-load-timeout ] |
データプリロードのタイムアウトまでの時間を設定します。単位は分です。
指定時間経過した場合、データプリロードを中断します。 0 を指定した場合は、タイムアウトしません。 |
30 |
| 読込モード
[ reading-mode ] |
読込モードを設定します。
同期:読み込みを同期で行います。 非同期:非同期で読み込みます。 |
同期 |
| ランキングデータのパス
[ rankingdata-file-path ] |
ランキングデータのファイルパスを指定します。 | なし |
以下は、MO で設定可能なデータプリロード対象エンティティ設定項目の一覧です。
Dottedname :server.persistence-service.data-pre-loads.persistence-unit._wo_dotted_.data-pre-load._wo_dotted_
| 属性名
(attribute-name) |
説明 | 既定値 | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| エンティティ名
[ name ] |
エンティティ名が設定されます。 | |||||||||||||
| エンティティ名 (完全修飾名)
[ entity-fqcn ] |
エンティティの (完全修飾名) FQCNが設定されます。 | |||||||||||||
| データプリロード対象
[ data-pre-load-enabled ] |
データプリロードの対象エンティティとするか指定します。 | false (対象としない) | ||||||||||||
| 分散環境下でデータプリロードを実行
[ distribute-preload-enabled ] |
分散環境でデータプリロードを行うか指定します。 | false (行わない) | ||||||||||||
| プリロード対象エンティティ ID 指定方法
[ target-entity ] |
エンティティIDによる読込データを指定します。
以下の方法が指定できます。 すべて: 全てのエンティティIDを読み込みます。 ランキング順: 「最大読み込み件数」の件数分を、ランキング順に読み込みます。 任意: 指定されたエンティティIDを読み込みます。 |
すべて | ||||||||||||
| プリロード対象エンティティID
[ target-entity-id ] |
プリロード対象のエンティティIDを指定します。
複数のエンティティIDを指定する場合は、セパレータとして",(カンマ)"で区切ります。 |
なし | ||||||||||||
| 最大読み込み件数
[ max-read-count ] |
このエンティティでプリロード可能なデータ件数を指定します。
正の整数を指定します。 |
1000 | ||||||||||||
| 読み込み待ち合わせ時間
[ transition-threshold ] |
次のエンティティの読み込み待ち合わせの時間を指定します。単位は秒です。
有効な値は、0 またはそれ以上の整数です。 0を指定した場合は、同期モードと同じになります。 |
60 | ||||||||||||
| 同期タイムアウト
[ synchronous-timeout ] |
読込処理のタイムアウト時間を指定します。単位は秒です。
有効な値は、0 またはそれ以上の整数です。 0を指定した場合は、タイムアウトしません。 |
60 | ||||||||||||
| 優先度
[ priority ] |
プリロードする優先順位を指定します。
数値が小さいほど優先度が高くなります。 正の整数を指定します。 |
100 | ||||||||||||
| プリロードの状態
|
データプリロードの状態が示されます。
|
なし |