WebSphere Extended Deployment, Version 6.0.x     Operating Systems: AIX, HP-UX, Linux, Solaris, Windows, z/OS

HTTP セッションの再平衡化

WebSphere Extended Deployment は、 アプリケーション・サーバー間での HTTP セッションの分配のバランスを 動的およびアクティブに取ることが出来ます。

WebSphere Application Server は、アプリケーション・サーバーの類縁性 に基づいて HTTP セッションを割り当てます。 ある特定のアプリケーション・サーバーにセッションが確立されると、 同じセッションに属す後続の要求は、確立済みのセッション類縁性を 持つアプリケーション・サーバーに割り当てられます。

セッション類縁性により、セッションの負荷は クラスターに対して長期間でバランスさせることができます。 一般に発生するすべての不均衡は短期間であり、許容できます。 しかし、セッションの再平衡化を使用して、 セッション類縁性の持つパフォーマンス上の利点を損なうことなく、 発生する短期間の不均衡の一部を救うことができます。

WebSphere Extended Deployment では、 セッションの再平衡化を導入して、 クラスターにまたがるセッションの平衡化を早めています。 分散セッションを使用し、Cookie を使用してセッションをトラッキングする場合は、セッションの再平衡化を使用できます。デフォルトでは、 WebSphere Extended Deployment アプリケーション・サーバーは、Cookie を使用したセッションのトラッキングが有効の状態で構成されていますが、分散セッションは構成されていません。

分散セッション用にアプリケーション・サーバーを構成するには、分散環境設定を参照してください。使用可能な 2 つのオプションのそれぞれの詳細については、データベース・セッション・パーシスタンスの構成およびピアツーピア・モードのメモリー間複製の構成 (デフォルトのメモリー間複製) を参照してください。

『ピアツーピア・モードのメモリー間複製の構成 (デフォルトのメモリー間複製)』のトピックでは、静的クラスター内のサーバー構成のステップについて説明していますが、これらのステップは動的クラスター内のサーバーにも使用できます。動的クラスターを構成する場合、 クラスター内のサーバーが自動的に開始しないように、あらかじめ動的クラスターを静的モードにしてください。クラスター内のすべてのサーバーの分散環境設定を変更した後に、動的クラスターを自動モードに切り替えます。モードを切り替えない場合、 動的クラスター内で既に開始しているサーバーを停止および再始動して、分散環境設定の変更を反映させる必要があります。

新規サーバーが動的クラスター内で使用可能になったときは、 そのサーバーには割り当てられた HTTP セッションはありません。 しかし、動的クラスター内の既存サーバーは、 類縁性が割り当てられたセッションを持っています。

[Version 6.0 only] WebSphere Extended Deployment バージョン 6.0 では、セッションの再平衡化を使用する目的は、 各サーバーがすべての既存セッションを同じ比率で持つようにセッションを再割り当てすることです。新規アプリケーション・サーバーに割り当てられるセッションの数は、 既存の各アプリケーション・サーバー上にあるセッションの数と 各アプリケーション・サーバーのウェイト値から決定されます。 セッションの再平衡化機能は、各アプリケーション・サーバーで実行されます。 各アプリケーション・サーバーは、使用可能になる新規アプリケーション・サーバー、および 各サーバーのウェイト値とセッションの数について知らされます。 これらの数量を使用して、アプリケーション・サーバーは、 現行アプリケーション・サーバーから新規アプリケーション・サーバーに 移動させるセッションの数を決定できます。 移動するセッションの数は、 HTTP サーブレット・フィルターに渡されます。このサーブレット・フィルターは、 サーバーの始動時に動的に追加されて、セッション要求のインターセプト およびリダイレクトを行います。

[Version 6.0.1 and later] WebSphere Extended Deployment バージョン 6.0.1 以降では、 セッションの再平衡化を使用する目的は、動的クラスター内の各サーバーで実行中のセッションの数がサーバーの割り当てられたウェイトと比例するようにセッションを再割り当てすることです。動的ワークロード・マネージャー (DWLM) がセッションの再平衡化機能を実行します。DWLM は、動的クラスター全体に関して持っている知識に基づいて、移動させるセッションの数、およびセッションの移動先を決定します。DWLM コンポーネントは、セッションのロケーションを考慮します。 また、特定のサーバーに対するウェイトを変更するだけでなく、セッションの移動を開始することもできます。このような移動は、 新規サーバーが開始している、サーバーが過負荷になったなど、DWLM がモニターしているイベントによって開始される可能性があります。

[Version 6.0.1 and later] 通常の WebSphere Application Server セッション管理ではなく、ObjectGrid ベースの HTTP セッション・サポートを使用している場合、HTTP セッションの再平衡化はサポートされません。

Uniform Resource Locator (URL) の再書き込みまたは Secure Sockets Layer (SSL) ID によって維持されているセッションを使用している場合、再平衡化は実行されません。 また、再平衡化は HTTP POST 要求上では実行されません。オンデマンド・ルーターをバイパスして、直接アプリケーション・サーバーの HTTP ポートに HTTP 要求を出してセッションにアクセスしても、セッションは再平衡化されません。 メモリー・セッションの PMI カウンターには、移動セッションが反映されます。 特に、PMI カウンターは、セッションが移動すると既存サーバー上では減少し、 始動したばかりの新規サーバー上では増加します。 しかし、新規セッションは、クラスター内のすべてのサーバーをまたいで ロード・バランシングされます。 PMI データの分析と HTTP セッションの使用法のベスト・プラクティスについての詳細は、 WebSphere Application Server Network Deployment インフォメーション・センターを参照してください。

セッションの再平衡化を有効または無効にするには、 管理コンソールの HttpSessionRebalanceOff カスタム・プロパティーを調整します。 詳しくは、 アプリケーション配置の カスタム・プロパティーを参照してください。

[Version 6.0 only]

Example

セッションの再平衡化を有効にし、 新規サーバーを動的クラスター内で始動すると、 以下のアクションが行われて、セッション要求が新規サーバーに再分配されます。

  1. 新規アプリケーション・サーバーが動的クラスター内で使用可能になります。
  2. 各既存サーバー内のセッションの再平衡化コンポーネントは、 各サーバーのウェイト値と各既存サーバー上のセッションの数と共に追加の通知を受け取ります。 その情報に基づいて、各サーバーの再平衡化コンポーネントにより新規サーバーに移動するセッションの数が計算されます。
  3. 一方では、クライアントは既存のセッションに対する要求を生成し、 クライアント・ブラウザー内に設定されている Cookie を送信します。
  4. Cookie は、セッション ID およびサーバー ID を含み、確立済みのセッション類縁性がある既存のアプリケーション・サーバーに割り当てられています。
  5. セッション類縁性があるサーバー上では、新規サーバーに移動するセッションの数が満たされていない場合、 サーブレット・フィルターが要求に対する応答を変更します。 実応答を送信する代わりに、サーブレット・フィルターは、 新規アプリケーション・サーバーのサーバー ID を含むクライアントに リダイレクトを送り返します。 アプリケーション・サーバーが新規アプリケーション・サーバーにセッションを移動しない場合は、サーブレット・フィルターが要求をサーブレットに転送します。
次の図は、このプロセスを示しています。
Figure 1. WebSphere Extended Deployment バージョン 6.0 における HTTP セッションの再平衡化

[Version 6.0.1 and later]

Example

次に、Extended Deployment バージョン 6.0.1 以降の環境でのセッション再平衡化の例を示します。

  1. 動的クラスターでは、新規サーバーが使用可能になるか、既存のサーバーが過負荷になります。
  2. 動的ワークロード・マネージャー (DWLM) は、移動するセッションの数を計算します。 新規サーバーが使用可能になっている場合、DWLM は、既存のサーバーから新規サーバーにセッションを割り当てることができます。 既存のサーバーが過負荷になった場合、DWLM は、過負荷になったサーバーから動的クラスター内の他のサーバーにセッションを移動できます。
  3. 一方では、クライアントは既存のセッションに対する要求を生成し、 クライアント・ブラウザー内に設定されている Cookie を送信します。
  4. Cookie は、セッション ID およびサーバー ID を含み、確立済みのセッション類縁性がある既存のアプリケーション・サーバーに割り当てられています。
  5. ターゲット・サーバーから多数のセッションをクラスター内の他のサーバーに移動する必要があると DWLM が示した場合、Servlet フィルターが、新規サーバー ID を含むクライアントにリダイレクトを戻します。 DWLM が別のサーバーへの移動を推奨するセッション数が既に移動されている場合、Servlet フィルターは、サーバー ID により識別されるサーバーに要求を転送します。
次の図は、このプロセスを示しています。
Figure 2. WebSphere Extended Deployment バージョン 6.0.1 以降における HTTP セッションの再平衡化
v601 セッションの再平衡化シナリオ



Related tasks
動的クラスターの作成と構成

Concept topic    

Terms of Use | Feedback Last updated: Mar 20, 2006 12:29:37 PM EST
http://publib.boulder.ibm.com/infocenter/wxdinfo/v6r0/index.jsp?topic=?topic=/com.ibm.websphere.xd.doc/info/odoe_task/codrsessionbalance.html

© Copyright IBM 2004, 2006. All Rights Reserved.
This information center is powered by Eclipse technology. (http://www.eclipse.org)