各種アプリケーション・サーバー用の HTTP セッション・マネージャーの構成

WebSphere® eXtreme Scale には、Web コンテナーの デフォルト・セッション・マネージャーをオーバーライドするセッション管理実装が バンドルされています。この実装は、セッション・レプリカ生成、高可用性、より優れたスケーラビリティーと 構成オプションを提供します。WebSphere eXtreme Scale セッション・レプリカ生成マネージャーおよび汎用組み込み ObjectGrid コンテナーの開始を有効にします。

このタスクについて

WebSphere Application Server Community Edition などの WebSphere Application Server を実行していない他のアプリケーション・サーバーで HTTP セッション・マネージャーを使用できます。 データ・グリッドを使用するように他のアプリケーション・サーバーを構成するには、 アプリケーションを接合して、WebSphere eXtreme Scale Java アーカイブ (JAR) ファイルをアプリケーションに取り込む必要があります。

手順

  1. アプリケーションを接合することで、アプリケーションがセッション・マネージャーを使用できるようにします。 セッション・マネージャーを使用するためには、適切なフィルター宣言をアプリケーションの Web デプロイメント記述子に追加する必要があります。さらに、セッション・マネージャー構成パラメーターが、デプロイメント記述子内のサーブレット・コンテキスト初期化パラメーターという形式でセッション・マネージャーに渡されます。 この情報は、以下に示す 3 とおりの方法でアプリケーションに導入することができます。
    • addObjectGridFilter スクリプト:

      eXtreme Scale とともに提供されるコマンド行スクリプトを使用して、フィルター宣言と構成によってアプリケーションをサーブレット・コンテキスト初期化パラメーターの形式で接合します。 wxs_home/session/bin/addObjectGridFilter.sh|bat スクリプトは、2 つのパラメーターを 使用します。1 つは接合するエンタープライズ・アーカイブ (EAR) ファイル または Web アーカイブ (WAR) ファイルへの絶対パスで、もう 1 つは 各種構成プロパティーが含まれたスプライサー・プロパティー・ファイルへの絶対パスです。このスクリプトの使用形式は以下の通りです。

      [Windows]
      addObjectGridFilter.bat <ear_or_war_file> <splicer_properties_file>
      [Unix]
      addObjectGridFilter.sh <ear_or_war_file> <splicer_properties_file>

      [Unix] UNIX 上のスタンドアロン・ディレクトリーにインストールされている eXtreme Scale の使用例:

      1. cd wxs_home/session/bin
      2. addObjectGridFilter.sh /tmp/mySessionTest.ear wxs_home/session/samples/splicer.properties
      接合されるサーブレット・フィルターは構成値のデフォルトを保持します。 これらのデフォルト値は、2 番目の引数にあるプロパティー・ファイルで指定する構成オプションでオーバーライドできます。 使用できるパラメーターのリストについては、サーブレット・コンテキスト初期化パラメーターを参照してください。

      eXtreme Scale インストールとともに提供されるサンプルの splicer.properties ファイルを変更して使用することができます。また、各サーブレットを拡張することによってセッション・マネージャーを挿入する、addObjectGridServlets スクリプトも使用できます。ただし、推奨スクリプトは addObjectGridFilter スクリプトです。

    • Ant ビルド・スクリプト:

      WebSphere eXtreme Scale には Apache Ant で使用できる build.xml ファイルが同梱されています。このファイルは WebSphere Application Server インストールの was_root/bin フォルダーに含まれています。 build.xml ファイルを変更して、セッション・マネージャー構成プロパティーを変更できます。構成プロパティーは splicer.properties ファイル内のプロパティー名と同一です。 build.xml ファイルの変更後に、 ant.shws_ant.sh (UNIX) または ant.batws_ant.bat (Windows) を実行することで、Ant プロセスを呼び出します。

    • 手動による Web 記述子の更新:

      Web アプリケーションに同梱されている web.xml ファイルを編集して、フィルター宣言、そのサーブレット・マッピング、およびサーブレット・コンテキスト初期化パラメーターが組み込まれるようにします。この方法はエラーを起こしやすいため、使用しないようにしてください。

    使用できるパラメーターのリストについては、サーブレット・コンテキスト初期化パラメーターを参照してください。
  2. WebSphere eXtreme Scale セッション・レプリカ生成マネージャーの JAR ファイルをアプリケーションに取り込みます。 ファイルは、アプリケーション・モジュールの WEB-INF/lib ディレクトリーまたはアプリケーション・サーバーのクラスパスに組み込むことができます。 必要な JAR ファイルは、以下のように、使用しているコンテナーのタイプによって異なります。
    • リモート・コンテナー・サーバー: ogclient.jarsessionobjectgrid.jar
    • 組み込みコンテナー・サーバー: objectgrid.jarsessionobjectgrid.jar
  3. オプション: リモート・コンテナー・サーバーを使用する場合、コンテナー・サーバーを開始します。 詳しくは、コンテナー・サーバーの始動を参照してください。
  4. アプリケーションをデプロイします。 サーバーやクラスターに対して通常使用する手順に従ってアプリケーションをデプロイしてください。 アプリケーションをデプロイした後、アプリケーションを始動することができます。
  5. アプリケーションにアクセスします。 これで、セッション・マネージャーおよび WebSphere eXtreme Scale と対話するアプリケーションにアクセスすることができます。

次のタスク

アプリケーションの装備時にセッション・マネージャーの構成属性の大多数を変更して、セッション・マネージャーを使用するようにすることができます。 これらの属性には、レプリカ生成タイプ (同期または非同期) のバリエーション、メモリー内セッション・テーブルのサイズなどがあります。 アプリケーションの装備時に変更できる属性を別にすれば、アプリケーションのデプロイメント後に変更できるその他の構成属性は、WebSphere eXtreme Scale サーバー・クラスター・トポロジーと、それらのクラスターのクライアント (セッション・マネージャー) がそれらのクラスターに接続する方法に関係する属性のみです。
リモート・シナリオの動作: アプリケーション・セッション・データを ホスティングしている全データ・グリッドに Web コンテナー・クライアントから到達できない場合、クライアントは、 代わりにアプリケーション・サーバーの基本 Web コンテナーをセッション管理に使用します。 次のようなシナリオでは、データ・グリッドに到達できないことがあります。
  • Web コンテナーとリモート・コンテナー・サーバー間のネットワークの問題
  • リモート・コンテナー・サーバーのプロセスが停止した場合
sessionTableSize パラメーターによって 指定される、メモリー内に保持されるセッション参照の数は、セッションが基本 Web コンテナー内に 保管されている場合、そのまま維持されます。 セッション数が sessionTableSize の値を超えると、最長未使用時間を基にセッションが Web コンテナー・セッション・キャッシュで無効化されます。リモート・データ・グリッドが使用可能になると、Web コンテナー・キャッシュで 無効化されたセッションは、リモート・データ・グリッドからデータを取得し、データを 新規セッションにロードできます。リモート・データ・グリッド全体が使用不可なまま、セッションが セッション・キャッシュで無効化されると、ユーザー・セッション・データは失われます。このような問題があるため、負荷の下で システムを実行する場合、実動リモート・データ・グリッド全体をシャットダウンすることはしないでください。