WebOTX Manual V11.1 (第6版) 目次を表示 |
WebOTX Application Server の Standard エディションは、インメモリデータグリッド製品の Infinispan V9.4.16 と連携しています。 これにより、分散キャッシュを活用した以下の機能を利用することができます。
また、Infinispan は JCache 仕様に準拠しているため、 JCache を使用したスケーラブルなアプリケーションを WebOTX に配備して使うことができます。
インストール初期状態では Infinispan との連携機能は無効化されています。 機能を有効にするには、${INSTALL_ROOT}/features/full-profile-feature.xml に以下の行を追加してください。
変更前
<modules> <module location="lib/datagrid/cache-api.ja" /> ... </modules>
変更後
<modules> <module location="lib/datagrid/infinispan-embedded.jar" /> <module location="lib/datagrid/cache-api.ja" /> ... </modules>
ファイルの編集が完了したら、設定反映のためにドメインを再起動してください。
データグリッド連携のネットワーク通信に関する設定を行います。
Infinispan はクラスタごとにユニークなクラスタ名を設定することで、 同じネットワーク内に複数の Infinispan クラスタを共存させることができます。 WebOTX は既定で "webotx-infinispan-cluster1" という Infinispan のクラスタ名を使用します。 同一ネットワーク内でのクラスタ名の重複を避ける目的で、この値を変更したい場合は以下のコマンドを実行してください。
otxadmin> set server.data-grids.infinispan-cluster-name=<Infinispanクラスタ名>
Infinispan はクラスタ通信基盤ライブラリとして JGroups を使用しています。 WebOTX の Infinispan 連携では、 JGroups の設定ファイルを ${INSTANCE_ROOT}/config/datagrid/infinispan ディレクトリに格納しており、 設定ファイル名は以下のコマンドで指定します(既定値: jgroups.xml)。
otxadmin> set server.data-grids.infinispan-jgroups-file=<JGroups設定ファイル名>
JGroups設定ファイルについては、Infinispan 9.4 User Guide の「2.1.4. Clustered Configuration」を参照してください。
Infinispan 連携ではクラスタ同士の通信を IPv4 で行うため、 IPv4 通信を優先する システムプロパティ -Djava.net.preferIPv4Stack=true を設定する必要があります。 以下のコマンドでシステムプロパティを設定し、そのドメインあるいはプロセスグループを再起動してください。
エージェントプロセスの場合)
otxadmin> create-jvm-options -Djava.net.preferIPv4Stack=true
プロセスグループの場合)
otxadmin> add-pg-javasystem-property --apgroup <アプリケーショングループ名> --javasystemprop java.net.preferIPv4Stack --value true <プロセスグループ名>
データグリッドの設定は、データグリッド連携を利用するモジュールごとに個別に定義することが可能です。 WebOTX インストール時には以下の 2 つの個別設定が用意しており、利用モジュール側の設定で個別設定の名前を指定します。
データグリッド名 | 用途 |
---|---|
__default_http_session | Web アプリケーションのセッションレプリケーション |
__dafault_jpa | JPA のインメモリキャッシュ |
利用モジュール側の設定については、 [インメモリデータグリッド連携部品]を参照してください。
なお、個別設定は既定では無効化されています。 実際に使用する際には、以下のコマンドでタイプを infinispan に変更する必要があります。
otxadmin> set server.data-grids.data-grid.<データグリッド名>.type=infinispan
その他のインメモリデータグリッド連携の設定については、 [ リファレンス > 設定 > インメモリデータグリッド連携 ] を参照してください。