Hazelcast設定¶
項目
概要¶
intra-mart Accel Platformに組み込んでセッション管理に利用する Hazelcast の設定を行います。コラム
Hazelcast の仕様の詳細については、以下を参照してください。リンク先は 2017年4月1日 時点で情報を確認しています。
「Hazelcast Reference Manual Version: 3.7.5」
モジュール im_session_store_hazelcast_em フォーマットファイル(xsd) WEB-INF/schema/hazelcast-config.xsd 設定場所 WEB-INF/conf/hazelcast-config.xml <?xml version="1.0" encoding="UTF-8"?> <hazelcast-config xmlns="http://intra-mart.co.jp/session-store/hazelcast-config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://intra-mart.co.jp/session-store/hazelcast-config ../schema/hazelcast-config.xsd"> <base> <id>im_session_store</id> </base> <network> <port port-count="2">5701</port> <join> <TCP> <member-list> <member>127.0.0.1</member> </member-list> </TCP> </join> </network> <store> <max-memory-size>1024</max-memory-size> <persistence enabled="false"> <jndi-name>java:comp/env/jdbc/iap-session</jndi-name> </persistence> </store> </hazelcast-config>
リファレンス¶
クラスタグループ設定¶
タグ名 base クラスタを構成するグループを設定します。【設定項目】
<hazelcast-config> <base> ... </base> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容 クラスタグループを設定します。 単位・型 なし 省略時のデフォルト値 なし 親タグ hazelcast-config
ID設定¶
タグ名 id クラスタを構成するグループの一意のIDです。Webアプリケーション毎に一意となるIDを設定してください。【設定項目】
<hazelcast-config> <base> <id>im_session_store</id> </base> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容 クラスタグループのIDを設定します。 単位・型 文字列 省略時のデフォルト値 im_session_store 親タグ base
通信スレッド数設定¶
タグ名 io-thread-count クラスタグループ内の通信に利用するスレッド数を設定します。ここで設定した値と同数のスレッドが、読み込み用、および書き込み用にそれぞれ利用されます。Hazelcast における 設定値 hazelcast.io.thread.count に相当します。【設定項目】
<hazelcast-config> <base> <io-thread-count>3</io-thread-count> </base> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容 クラスタグループ内の通信に利用するスレッド数を設定します。 単位・型 数値(正の整数) 省略時のデフォルト値 3 親タグ base
ネットワーク構成設定¶
タグ名 network クラスタグループのネットワーク構成に関する設定を行います。【設定項目】
<hazelcast-config> <network> ... </network> </hazelcast-config>
必須項目 ○ 複数設定 × 設定値・設定する内容
port クラスタグループ内の通信に利用するポート番号を設定します。 join クラスタグループメンバの発見方法を設定します。 単位・型 なし 省略時のデフォルト値 なし 親タグ hazelcast-config
ポート設定¶
タグ名 port クラスタグループ内の通信に利用するポート番号を設定します。【設定項目】
<hazelcast-config> <network> <port port-count="2">5701</port> </network> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容 利用するポート番号の最小値を設定します。このポート番号から、 port-count 属性の値を加えた番号までの範囲で利用可能なポートを利用します。単位・型 数値(ポート番号) 省略時のデフォルト値 5701 親タグ network 【属性】
属性名 説明 必須 デフォルト値 port-count 利用するポート番号の範囲を指定します。 × 100
クラスタグループ構成方法設定¶
タグ名 join クラスタグループを構成する方法を設定します。子要素に <UDP> または <TCP> のいずれか片方を記述してください。【設定項目】
<hazelcast-config> <network> <join> ... </join> </network> </hazelcast-config>
必須項目 ○ 複数設定 × 設定値・設定する内容
UDP マルチキャスト通信でメンバを発見する設定を行います。 TCP ユニキャスト通信でメンバを特定する設定を行います。 単位・型 なし 省略時のデフォルト値 なし 親タグ network
マルチキャスト通信設定¶
タグ名 UDP マルチキャスト通信でメンバを発見する設定を行います。【設定項目】
<hazelcast-config> <network> <join> <UDP> ... </UDP> </join> </network> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容
multicast-group マルチキャスト通信に利用するIPアドレスを設定します。 multicast-port マルチキャスト通信を送受信するポート番号を設定します。 単位・型 なし 省略時のデフォルト値 なし 親タグ join コラム
この設定を行った場合、ユニキャストの設定(TCP)は行えません。
マルチキャストアドレス設定¶
タグ名 multicast-group マルチキャスト通信に利用するIPアドレスを設定します。【設定項目】
<hazelcast-config> <network> <join> <UDP> <multicast-group>224.2.2.3</multicast-group> ... </UDP> </join> </network> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容 マルチキャスト通信に利用するIPアドレスを設定します。224.0.0.0 から 239.255.255.255 の範囲内で指定してください。単位・型 IPアドレス 省略時のデフォルト値 224.2.2.3 親タグ UDP
マルチキャスト通信ポート設定¶
タグ名 multicast-port マルチキャスト通信を送受信するポート番号を設定します。【設定項目】
<hazelcast-config> <network> <join> <UDP> <multicast-port>54327</multicast-port> ... </UDP> </join> </network> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容 マルチキャスト通信を送受信するポート番号を設定します。単位・型 数値(ポート番号) 省略時のデフォルト値 54327 親タグ UDP
ユニキャスト通信設定¶
タグ名 TCP ユニキャスト通信でメンバを特定する設定を行います。【設定項目】
<hazelcast-config> <network> <join> <TCP> ... </TCP> </join> </network> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容
member-list クラスタグループのメンバ情報を列挙します。 単位・型 なし 省略時のデフォルト値 なし 親タグ join コラム
この設定を行った場合、マルチキャストの設定(UDP)は行えません。
メンバ設定¶
タグ名 member-list クラスタグループのメンバ情報を列挙します。【設定項目】
<hazelcast-config> <network> <join> <TCP> <member-list> ... </member-list> </TCP> </join> </network> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容
member メンバのIPアドレスを設定します。 単位・型 なし 省略時のデフォルト値 なし 親タグ TCP
メンバアドレス設定¶
タグ名 member メンバのIPアドレスを設定します。【設定項目】
<hazelcast-config> <network> <join> <TCP> <member-list> <member>192.168.0.1</member> <member>192.168.0.2</member> ... </member-list> </TCP> </join> </network> </hazelcast-config>
必須項目 × 複数設定 ○ 設定値・設定する内容 メンバのIPアドレスを設定します。 単位・型 IPアドレス 省略時のデフォルト値 127.0.0.1 親タグ member-list
セッションストア設定¶
タグ名 store セッションストアに関する設定を行います。【設定項目】
<hazelcast-config> <store> ... </store> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容
max-memory-size セッションストアのメモリサイズを設定します。 persistence セッションの永続化について設定します。 単位・型 なし 省略時のデフォルト値 なし 親タグ hazelcast-config
セッションストアメモリサイズ設定¶
タグ名 max-memory-size セッションストアのメモリサイズを設定します。【設定項目】
<hazelcast-config> <store> <max-memory-size> ... </max-memory-size> </store> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容 セッションストアのメモリサイズを設定します。 単位・型 MB(メガバイト) 省略時のデフォルト値 1024 親タグ store コラム
メモリサイズの算出方法に関しては「intra-mart Accel Platform セットアップガイド」-「セッションストアメモリサイズの計算式」を参照してください。
セッションストア永続化設定¶
タグ名 persistence セッションの永続化について設定します。【設定項目】
<hazelcast-config> <store> <persistence enabled="true"> ... </persistence> </store> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容
jndi-name データソースのJNDI名を設定します。 access-user 永続化情報に記録するユーザ名を設定します。 単位・型 なし 省略時のデフォルト値 なし 親タグ store 【属性】
属性名 説明 必須 デフォルト値 enabled セッションの永続化を行うかどうかを設定します。 × false 注意
セッションの永続化を有効にしていない場合でも、フェイルオーバーを行うことはできます。フェイルオーバーに加えて永続化を行いたい場合のみ、この設定を行ってください。永続化を行う上ではいくつかの注意点があります。詳細は「intra-mart Accel Platform セットアップガイド」-「セッション情報の永続化を行う場合」の注意事項を参照してください。
データソース設定¶
タグ名 jndi-name データソースのJNDI名を設定します。【設定項目】
<hazelcast-config> <store> <persistence enabled="true"> <jndi-name>java:comp/env/jdbc/iap-session</jndi-name> ... </persistence> </store> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容 データソースのJNDI名を設定します。 単位・型 文字列 省略時のデフォルト値 なし 親タグ persistence
永続化情報記録ユーザ設定¶
タグ名 access-user 永続化情報に記録するユーザ名を設定します。【設定項目】
<hazelcast-config> <store> <persistence enabled="true"> <access-user>im_http_session</access-user> ... </persistence> </store> </hazelcast-config>
必須項目 × 複数設定 × 設定値・設定する内容 永続化情報に記録するユーザ名を設定します。 単位・型 文字列 省略時のデフォルト値 im_http_session 親タグ persistence