ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Coherence*WebでのHTTPセッション・マネージメントの管理
12c (12.1.2)
B70746-02
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

A Coherence*Webコンテキスト・パラメータ

この付録では、Coherence*Webコンテキスト・パラメータについて説明します。このパラメータは、web.xmlファイルで構成することも、システム・プロパティとしてコマンドラインで入力することもできます。システム・プロパティは、コンテキスト・パラメータと同じ名前を持ちますが、ダッシュ(-)がピリオド(.)に置き換えられています。

たとえば、コンテキスト・パラメータのcoherence-enable-sessioncontextは、コマンドラインで次のように宣言できます。

-Dcoherence.enable.sessioncontext=true

システム・プロパティと、同等のコンテキスト・パラメータの両方が構成されている場合、システム・プロパティの値が使用されます。

表A-1で、Coherence*Webのコンテキスト・パラメータについて説明します。

表A-1 Coherence*Webのコンテキスト・パラメータ

パラメータ名 説明

coherence-application-name

Coherence*Webではこのパラメータの値を使用して、ApplicationScopeControllerインタフェースを使用して属性のスコープを設定するアプリケーションの名前を判別します。このパラメータの値は、次の形式で指定する必要があります。

アプリケーション名 + ! + Webモジュール名

application nameApplicationScopeControllerインタフェースを使用するアプリケーションの名前であり、Web module nameはそれが記述されているWebモジュールの名前です。

たとえば、test.earというEARファイルと、このEARファイル内で定義されたapp1というWebモジュールがある場合、coherence-application-nameパラメータのデフォルト値はtest!app1となります。

このパラメータが構成されていない場合、Coherence*Webでは、かわりにクラス・ローダーの名前が使用されます。また、このパラメータが構成されておらず、ApplicationScopeControllerインタフェースが構成されている場合、アプリケーション名が構成されていなかったことを示す警告が記録されます。詳細は、「セッション属性スコープ設定」を参照してください。

coherence-attribute-overflow-threshold

スプリット・モデルの場合、「セッション・モデル」の説明のとおり、大型の属性向けに確保されている独立したオーバーフロー・キャッシュに格納するためにシリアライズ形式の属性値で必要な最小長(バイト数単位)をこの値で指定します。

値を指定しない場合、このパラメータはデフォルトで1024に設定されます。

coherence-cache-configuration-path

セッション・キャッシュ情報を取得するために、デフォルトのdefault-session-cache-config.xmlファイルを使用するかわりに、Coherence*Webが使用する必要があるファイルの名前を指定します。「セッション・キャッシュ構成ファイル名のカスタマイズ」を参照してください。

coherence-cache-delegator-class

分散キャッシュ内のデータ操作(取得、配置および削除)を担当するキャッシュ・デリゲータ・クラスを指定します。次の値が有効です。

  • com.tangosol.coherence.servlet.LocalSessionCacheDelegator—このクラスは、セッション・インスタンスの保存および取得に分散キャッシュが使用される前に、ローカル・キャッシュが使用される必要があることを示しています。詳細は、「同一のセッション・インスタンスへの同時アクセス」を参照してください。

coherence-cluster-owned

trueの場合は、Webアプリケーションを終了すると自動的にCoherenceノードが終了します。この場合は、WARスコープ設定クラスタ・ノードによるデプロイメント・モデルを使用する必要があります。詳細は、「WARスコープ設定クラスタ・ノード」を参照してください。

falseの場合は、WebアプリケーションがCoherenceノードを終了する必要があります(Javadoc内のcom.tangosol.net.CacheFactory.shutdown()を参照)。クラスタ・ノードをスコープ設定したデプロイメント・モデルのこの状況での使用、およびアプリケーションがCoherenceノードを終了する環境とその終了処理に伴う副作用を慎重に検討する必要があります。クラスタ・ノードのスコープ設定の詳細は、「クラスタ・ノード分離」を参照してください。

注意: WebInstallerを使用している場合は、trueを指定すると、Java EEアプリケーションにあるWebアプリケーションのWEB-INF/libディレクトリにCoherenceライブラリを配置できます。

値を指定しない場合、このパラメータはデフォルトでfalseに設定されます。

coherence-configuration-consistency

trueの場合、Coherence*Webは起動時に構成チェックを実行し、Web層にあるすべてのノードで同じCoherence*Web構成であるかどうかを判別します。特定ノードの構成に一貫性がない場合、起動に失敗します(それにより、アプリケーションが起動しなくなります)。

falseの場合(チェックが実行されず)に構成に一貫性がないと、セッション・データの管理においてクラスタ・メンバーが一貫性のない動作をすることがあります。

値を指定しない場合、このパラメータはデフォルトでfalseに設定されます。

coherence-contextless-session-retain-millis

現在のリクエスト・コンテキストとは関係がないセッションにアクセスしているときに、そのセッションに対するロックを保持する時間を指定します(ミリ秒単位)。現在のリクエスト・コンテキストからセッションが暗黙的に指定されるのは、現在のスレッドでサーブレット・リクエストが処理されており、そのセッションに関連付けられている場合のみです。セッション・オブジェクトに対するその他のすべてのアクセスはコンテキスト外となります。たとえば、任意のセッションへの参照をSessionContextオブジェクトから取得する場合(該当のオプションが有効になっている場合)や、セッションを直接管理するためのセッション・オブジェクト参照を保持するコードがアプリケーションに記述されている場合です。セッションへのアクセスにはそのセッションの所有権が必要なので、セッション・オブジェクトに対するコンテキスト外アクセスでは、コール元にかわって自動的に所有権を取得できます。この所有権はこのオプションで指定した時間だけ保持できるので、セッションのコールごとに所有権の取得と解放が繰り返される、時間のかかる操作を省略できます。有効な時間は10から10000ミリ秒(1/100から10秒)です。

値を指定しない場合、このパラメータはデフォルトで200に設定されます。

coherence-distributioncontroller-class

この値は、com.tangosol.coherence.servlet.HttpSessionCollection$SessionDistributionControllerインタフェース実装のクラス名を指定します。

有効な値は次のとおりです。

  • com.tangosol.coherence.servlet.AbstractHttpSessionCollection$DistributedController: すべてのセッション(およびそれらの属性)の分散管理を実施するSessionDistributionControllerインタフェースの実装。これがデフォルトの動作ですが、このような実装により、 HttpSessionControllerの使用による生のオーバーヘッドを測定できます。

  • com.tangosol.coherence.servlet.AbstractHttpSessionCollection$HybridController: すべてのセッションおよびシリアライズ可能な属性の分散管理を実施するSessionDistributionControllerインタフェースの実装。Serializableインタフェースを実装していないすべてのセッション属性は、ローカルのままとなります。

  • com.tangosol.coherence.servlet.AbstractHttpSessionCollection$LocalController: すべてのセッション(およびそれらの属性)のローカルな管理を実施するSessionDistributionControllerインタフェースの実装。これは本番環境には有用ではありませんが、ローカルのみの実装と完全な分散実装でのスケーラブル・パフォーマンスの違いをテストする場合に役立つことがあります。

coherence-enable-sessioncontext

trueに設定した場合は、アプリケーションでセッション・コンテキストのセッションを繰り返すことができます。この処理は、サーブレット仕様では推奨されていません。

値を指定しない場合、このパラメータはデフォルトでfalseに設定されます。

WebLogic SPI実装でこのコンテキスト・パラメータを使用した場合は、Coherence*Webの動作を制御できません。

coherence-eventlisteners

Webコンテナからイベントを受信する必要があるアプリケーション・クラス名のカンマ区切りリストです。このリストは、web.xmlファイルのlistener要素で宣言したアプリケーション・リスナーから得られます。

WebLogic SPI実装でこのコンテキスト・パラメータを使用した場合は、Coherence*Webの動作を制御できません。

coherence-enable-suspect-attributes

trueに設定した場合、Coherence*Webはセッション関連のいずれかの属性値が変更されていないか検出を試みます。可変(シンプル・チェックで判別される)でありgetメソッドによってアクセスできる属性は、変更された可能性があると見なされます。可変オブジェクトは、アプリケーション・コードによって変更された可能性があり、再度シリアライズしてキャッシュに戻す必要があります。詳細は、「変更された属性値の検出」を参照してください。

値を指定しない場合、このパラメータはデフォルトでtrueに設定されます。

coherence-factory-class

SessionHelper.Factoryファクトリ・クラスを実装するクラスの完全修飾名です。

デフォルトでcom.tangosol.coherence.servlet.apinn.DefaultFactoryに設定されます。ここで、nnは、22232425のいずれかで、それぞれ、サーブレット2.2、2.3、2.4、2.5コンテナに対応します。

coherence-local-session-cachename

この名前は、coherence-distributioncontroller-classパラメータを指定した場合に、分散されないセッションを保存するローカル・キャッシュの名前をオーバーライドします。

値を指定しない場合、このパラメータはデフォルトでlocal-session-storageに設定されます。このパラメータの詳細は、付録C「セッション・キャッシュ構成ファイル」を参照してください。

coherence-local-attribute-cachename

この名前は、coherence-distributioncontroller-classパラメータを指定した場合またはcoherence-preserve-attributesパラメータにtrueを指定した場合に、分散されないセッションを保存するローカル・キャッシュの名前をオーバーライドします。

値を指定しない場合、このパラメータはデフォルトでlocal-attribute-storageに設定されます。このパラメータの詳細は、付録C「セッション・キャッシュ構成ファイル」を参照してください。

coherence-preserve-attributes

この値をtrueに設定した場合は、シリアライズ不可能な属性をローカルな属性として維持する指定となります。このパラメータでは、セッションのシリアライズ不可属性を取得するためにロード・バランサが必要です。

クライアント(アプリケーション・サーバー)が失敗すると、これらの属性は失われます。アプリケーションは、この状態から復旧できる必要があります。

GlassFish Serverではローカル・セッションを使用可能にする必要があるため、GlassFishにActiveCacheを使用している場合は、この値をtrueに設定します。

値を指定しない場合、このパラメータはデフォルトでfalseに設定されます。

coherence-reaperdaemon-assume-locality

この設定により、セッション・リーパーでは、(たとえば、分散キャッシュ・サービスによって)このノードに保存されるセッションは、このノードで期限切れのチェックが必要なセッションのみであると仮定できます。リーパーを実行していないノードでセッションの記憶域キャッシュを管理している場合は、この値をfalseに設定する必要があります。たとえば、セッションの記憶域キャッシュの管理にキャッシュ・サーバーを使用している場合がこれに該当します

キャッシュ・サーバーを使用している場合は、スプリット・モデルを選択し、全体をそのキャッシュ・サーバーで管理している独立した分散キャッシュ・サービスでセッションのオーバーフロー記憶域を実行します。セッションの記憶域キャッシュ自体は、全体をアプリケーション・サーバーJVMで管理している分散キャッシュ・サービスに残します。これによって、このローカル性を前提とした機能を活用できます。セッション・リーパーの詳細は、第7章「期限切れHTTPセッションのクリーンアップ」を参照してください。

値を指定しない場合、このパラメータはデフォルトでtrueに設定されます。

coherence-reaperdaemon-cluster-coordinated

trueに設定した場合、セッション・リーバーは、指定したリープ・サイクル中に1台のサーバーのみでリープを実行し、クラスタで管理しているすべてのセッションをそのサーバーで確認するように、クラスタ内のリープを調整します。セッション・リーパーの詳細は、第7章「期限切れHTTPセッションのクリーンアップ」を参照してください。

スティッキー最適化(coherence-sticky-sessions)も有効化されている場合は、このオプションを使用しないでください。詳細は、「セッション・リーパーの理解」を参照してください。

値を指定しない場合、このパラメータはデフォルトでfalseに設定されます。

coherence-reaperdaemon-cycle-seconds

リープ処理の間でデーモンが待機する秒数です。セッション・タイムアウト間隔の長い本番クラスタの場合、これは問題なく大きな値に設定できます。テストで、特にセッション・タイムアウト間隔が短い場合には、もっと小さな値に設定できます。設定値が小さすぎると、ネットワーク・トラフィックの増加や処理に費やすサイクルの増加が発生します。小さい設定値が効果的なのは、期限切れのセッションをアプリケーションで迅速に無効にする必要がある場合のみです。セッション・リーパーの詳細は、第7章「期限切れHTTPセッションのクリーンアップ」を参照してください。

値を指定しない場合、このパラメータはデフォルトで300に設定されます。

coherence-reaperdaemon-parallel

trueに設定した場合、セッション・リーパーは期限切れセッションをパラレルに無効化します。falseに設定した場合、期限切れセッションはシリアルに無効化されます。「セッション・リーパーの理解」を参照してください。

デフォルトはtrueです。

coherence-reaperdaemon-priority

セッションのリーパー・デーモンの優先度です。詳細は、第7章「期限切れHTTPセッションのクリーンアップ」およびjava.lang.Threadクラスのソースを参照してください。

値を指定しない場合、このパラメータはデフォルトで5に設定されます。

coherence-reaperdaemon-sweep-modulo

Coherenceリリース3.5以降、このパラメータは非推奨です。

coherence-scopecontroller-class

この値は、オプションのcom.tangosol.coherence.servlet.HttpSessionCollection$AttributeScopeControllerインタフェース実装のクラス名を指定します。詳細は、「セッション属性スコープ設定」を参照してください。

有効な値は次のとおりです。

  • com.tangosol.coherence.servlet.AbstractHttpSessionCollection$ApplicationScopeController

  • com.tangosol.coherence.servlet.AbstractHttpSessionCollection$GlobalScopeController

GlassFishのCoherence*Web SPIおよびActiveCacheのデフォルト値は、com.tangosol.coherence.servlet.AbstractHttpSessionCollection$ApplicationScopeControllerです。

Coherence*Web WebInstallerについては、デフォルト値は宣言されていません。

coherence-servletcontext-clustered

この値は、ServletContextの属性をクラスタ化するかどうかを指定し、trueまたはfalseのいずれかとなります。trueの場合は、シリアライズ可能なすべてのServletContext属性値がすべてのクラスタ・ノード間で共有されます。

値を指定しない場合は、デフォルトでfalseに設定されます。この主な理由は、ServletContext属性はJVMに対してローカルであり、クラスタ化しないことがサーブレット仕様で規定されているためです。

WebLogic SPIで使用した場合、このコンテキスト・パラメータは無効です。

coherence-servletcontext-cachename

サーブレット・コンテキストをクラスタ化している場合にサーブレットのコンテキスト・データを保持するために使用するCoherenceキャッシュの名前を指定します。Coherence*Web SPIで使用した場合、このパラメータはキャッシュ名の定義に使用できますが、そのキャッシュは使用されません。

値を指定しない場合、このパラメータはデフォルトでservletcontext-storageに設定されます。このパラメータの詳細は、付録C「セッション・キャッシュ構成ファイル」を参照してください。

coherence-session-affinity-token

セッション・アフィニティ接尾辞トークンを指定の値で構成します。たとえばセッション・アフィニティ接尾辞をabcdに設定するには、Webアプリケーションのweb.xmlファイルに次のコードを追加します。

<context-param>
  <param-name>coherence-session-affinity-token</param-name>
  <param-value>abcd</param-value>
</context-param>

トークンからセッション・アフィニティ接尾辞を分割するには、パラメータ値として感嘆符(!)を入力します。詳細は、「その他のアプリケーション・サーバーとのCoherence*Webセッションの共有」を参照してください。

coherence-session-app-locking

この値をtrueに設定した場合は、別々のアプリケーションにある2つのスレッドで1つの同じセッションに対するリクエストを同時に処理することはできなくなります。trueに設定した場合、アプリケーション・ロックは暗黙的にメンバー・ロックになるので、coherence-session-member-lockingパラメータの値が無視されます。値をfalseに設定すると、スレッド・ロックとの互換性がなくなります。

値を指定しない場合、このパラメータはデフォルトでfalseに設定されます。

この表のcoherence-session-member-lockingcoherence-session-lockingおよびcoherence-session-thread-lockingのパラメータの説明および「セッション・ロック・モード」も参照してください。

coherence-session-cachename

この名前は、セッションを保存するクラスタ・キャッシュの名前をオーバーライドします。

値を指定しない場合、このパラメータはデフォルトでsession-storageに設定されます。このパラメータの詳細は、付録C「セッション・キャッシュ構成ファイル」を参照してください。

coherence-session-cookie-domain

「Request for Comments 2109: HTTP State Management Mechanism」(RFC 2109)で定義されているセッションCookieのドメインを指定します。デフォルトでは、セッション管理実装によって明示的に設定されているドメインはありません。詳細は、「セッションとセッション属性のスコープ設定」を参照してください。

WebLogic SPI実装でこのコンテキスト・パラメータを使用した場合は、Coherence*Webの動作を制御できません。

coherence-session-cookie-httponly

HttpOnly属性をセッションCookieに追加します。すべてのブラウザがこの機能をサポートしているわけではありません。このコンテキスト・パラメータは設定済アプリケーションでのみ使用できます。詳細は、「クロスサイト・スクリプティング攻撃の防止」を参照してください。

coherence-session-cookie-name

セッションCookieの名前を指定します。

指定しない場合、このパラメータはデフォルトでJSESSIONIDに設定されます。

WebLogic SPI実装でこのコンテキスト・パラメータを使用した場合は、Coherence*Webの動作を制御できません。

coherence-session-cookie-path

RFC 2109で定義されているセッションCookieのパスを指定します。デフォルトでは、セッション管理実装によって明示的に設定されているパスはありません。詳細は、「セッションとセッション属性のスコープ設定」を参照してください。

WebLogic SPI実装でこのコンテキスト・パラメータを使用した場合は、Coherence*Webの動作を制御できません。

coherence-session-cookie-max-age

RFC 2109で定義されているセッションCookieの最長有効期間(秒)を指定します。-1を指定すると、クライアント上ではCookieが維持されません。正の値を指定すると、最長でその秒数、Cookieがクライアント上で維持されます。0は指定できません。

値を指定しない場合、このパラメータはデフォルトで-1に設定されます。

WebLogic SPI実装でこのコンテキスト・パラメータを使用した場合は、Coherence*Webの動作を制御できません。

coherence-session-cookie-secure

trueに設定すると、Secure Socket Layer (SSL)接続を介したWebクライアントからのみセッションCookieが送信されます。値を指定しない場合は、デフォルトでfalseに設定されます。

WebLogic SPI実装でこのコンテキスト・パラメータを使用した場合は、Coherence*Webの動作を制御できません。

coherence-session-cookies-enabled

値を指定しない場合、このパラメータはデフォルトでtrueに設定され、セッションのCookieが有効になります。

WebLogic SPI実装でこのコンテキスト・パラメータを使用した場合は、Coherence*Webの動作を制御できません。

coherence-session-deathcert-cachename

この名前は、最近終了したセッションのIDを保存するクラスタ・キャッシュの名前をオーバーライドします。

値を指定しない場合、このパラメータはデフォルトでsession-death-certificatesに設定されます。このパラメータの詳細は、付録C「セッション・キャッシュ構成ファイル」を参照してください。

coherence-session-expire-seconds

この値は、セッションの有効期限をオーバーライドします。単位は秒です。-1に設定した場合は、セッションが無期限になります。詳細は、第7章「期限切れHTTPセッションのクリーンアップ」を参照してください。

値を指定しない場合、このパラメータはデフォルトで1800に設定されます。

coherence-session-get-lock-timeout

Coherence*Webのロック取得のタイムアウトを構成します。詳細は、「HTTPセッションでのロックのトラブルシューティング」を参照してください。

coherence-session-id-length

生成されるセッションIDの文字数です。推奨の絶対最小長は8です。

値を指定しない場合、このパラメータはデフォルトで12に設定されます。

WebLogic SPI実装でこのコンテキスト・パラメータを使用した場合は、Coherence*Webの動作を制御できません。

coherence-session-lazy-access

セッションの遅延取得を有効化します。セッションは、サーブレットまたはフィルタがアクセスを試みたときにのみ取得されます。これは、設定済Webアプリケーションにのみ関係します。Coherence*Web SPIを使用する場合は関係ありません。「遅延取得によるセッションへのアクセス」を参照してください。

値を指定しない場合、このパラメータはデフォルトでfalseに設定されます。

coherence-session-locking

falseの場合、セッションに対して最後の更新が保存される同時変更が可能です。coherence-session-app-lockingcoherence-session-member-lockingまたはcoherence-session-thread-lockingtrueに設定した場合は、この値は無視されます(論理的にtrueとされます)。「オプティミスティック・ロック」「最後の書込みを優先するロック」を参照してください。

値を指定しない場合、このパラメータはデフォルトでfalseに設定されます。

この表のcoherence-session-app-lockingcoherence-session-member-lockingおよびcoherence-session-thread-lockingも参照してください。

coherence-session-locking-mode

このコンテキスト・パラメータの値は、HTTPセッションへの同時アクセスを制御するロック・モードを決定します。

  • none: 単一のメンバーまたは複数のメンバーにある複数のスレッドからのセッションへの同時アクセスを許可します。この場合、最後の書込みが保存されます。これはデフォルトのロック・モードです。「最後の書込みを優先するロック」を参照してください。

  • optimistic: 1つ以上のメンバーにある複数のWebコンテナ・スレッドから同じセッションに同時にアクセスすることを許可します。「オプティミスティック・ロック」を参照してください。

  • app: 別々のアプリケーションにある2つのスレッドで同じセッションに対するリクエストを同時に処理することを禁止します。このパラメータをappに設定した場合、アプリケーション・ロックは暗黙的にメンバー・ロックになるので、coherence-session-member-lockingパラメータの値が無視されます。値をfalseに設定すると、スレッド・ロックとの互換性がなくなります。「アプリケーション・ロック」を参照してください。

  • member: 同じクラスタ・ノードにある複数のWebコンテナ・スレッドから同じセッションに同時にアクセスして変更することを許可しますが、別々のメンバーにあるスレッドからの同時アクセスは禁止します。「メンバー・ロック」を参照してください。

  • thread: 同じJVMにある2つのスレッドで同じセッションに対するリクエストを同時に処理することを禁止します。trueに設定した場合、スレッド・ロックは暗黙的にメンバー・ロックになるので、coherence-session-member-lockingパラメータの値が無視されます。「スレッド・ロック」を参照してください。

たとえば、web.xmlcoherence-session-locking-modeコンテキスト・パラメータをアプリケーション・ロックに設定するには、次のように指定します。

<context-param>
   <param-name>coherence-session-locking-mode</param-name>
   <param-value>app</param-value>
</context-param>

coherence-session-log-invalidation-exceptions

セッションの無効化中、セッション・リーパーでClassNotFound例外が多数スローされ、記録される場合があります。このコンテキスト・パラメータがfalseに設定されている場合、この例外は抑制されます。trueに設定されている場合、この例外は記録されます。

値を指定しない場合、このパラメータはデフォルトでtrueに設定されます。

セッション無効化および、セッション・リーパーの動作中に発生する可能性のあるClassNotFound例外の原因の詳細は、「セッション・リーパーのセッション無効化の例外の理解」を参照してください。

coherence-session-log-threads-holding-lock

trueの場合、メンバーがセッションに対してクラスタ・ロックを取得できないときに、診断起動サービスが実行されます。この起動サービスによって、セッションの所有権を持つメンバーが、ロックを現在保持しているスレッドのスタック・トレースを記録します。coherence-session-log-threads-holding-lockコンテキスト・パラメータは、coherence-sticky-sessionsコンテキスト・パラメータがtrueに設定されている場合にのみ使用可能です。

値を指定しない場合、このパラメータはデフォルトでtrueに設定されます。

詳細は、「HTTPセッションでのロックのトラブルシューティング」を参照してください。

coherence-session-logger-level

Coherence*Webのロギング・レベルをJDKロギングのかわりに設定する方法。このパラメータの有効な値は、JDKロギングの値(SEVEREWARNINGINFOCONFIGFINEFINER (デフォルト)、およびFINEST)と同じです。詳細は、「Coherence*Webのロギングの構成」を参照してください。

java.util.loggingについてはJavadocも参照してください。

http://docs.oracle.com/javase/1.4.2/docs/api/java/util/logging/Level.html

coherence-session-management-cachename

この名前は、セッション管理実装の管理情報と構成情報を保存するクラスタ・キャッシュの名前をオーバーライドします。通常は、レプリケート・キャッシュとして構成する必要があります。

値を指定しない場合、このパラメータはデフォルトでsession-managementに設定されます。このパラメータの詳細は、付録C「セッション・キャッシュ構成ファイル」を参照してください。

coherence-session-member-locking

この値をtrueに設定した場合は、別々のメンバーにある2つのスレッドで1つの同じセッションに対するリクエストを同時に処理することはできなくなります。

値を指定しない場合、このパラメータはデフォルトでfalseに設定されます。

この表のcoherence-session-thread-lockingcoherence-session-lockingおよびcoherence-session-app-lockingも参照してください。

coherence.session.optimizeModifiedSessions

このJVMシステム・プロパティをtrueに設定した場合、最後の書込みを優先するロックを使用するアプリケーションでパフォーマンスを向上できるニア・キャッシュ最適化が有効になります。

値を指定しない場合、この値はデフォルトでfalseに設定されます。

このパラメータは、システム・プロパティとしてコマンドラインでのみ設定できます。

coherence-session-overflow-cachename

所定のサイズより大きいことから、シリアライズしたセッション・オブジェクト自体の一部としてではなく、個別のキャッシュ・エントリとしたほうが効率的に管理できると判断される大型の属性を保存するクラスタ・キャッシュの名前を、スプリット・モデルの場合にこの値がオーバーライドします。

値を指定しない場合、このパラメータはデフォルトでsession-overflowに設定されます。このパラメータの詳細は、付録C「セッション・キャッシュ構成ファイル」を参照してください。

coherence-session-strict-spec

falseに設定した場合、実装はサーブレット仕様に従う必要がありません。実装では、特定の種類の例外が無視され、アプリケーションは終了しません。属性の設定、取得および削除、またはセッションの無効化によって、セッション・リスナーへのコールバックは生成されません。コール元のアプリケーションにクラスが存在しないために属性をデシリアライズできない場合、ClassNotFound例外がコール元に伝播されません。

trueに設定した場合、実装はサーブレット仕様に厳密に準拠します。ClassNotFound例外はアプリケーションによって処理される必要があり、属性値の取得に失敗した場合でもセッション・リスナー・イベントが送信されます。

値を指定しない場合、このパラメータはデフォルトでtrueに設定されます。

coherence-session-thread-locking

この値をtrueに設定した場合は、同じJVMにある2つのスレッドで1つの同じセッションに対するリクエストを同時に処理することはできなくなります。trueに設定した場合、スレッド・ロックは暗黙的にメンバー・ロックになるので、coherence-session-member-lockingパラメータの値が無視されます。

値を指定しない場合、このパラメータはデフォルトでtrueに設定されます。

この表のcoherence-session-app-lockingcoherence-session-lockingcoherence-session-member-lockingパラメータの説明、および「セッション・ロック・モード」を参照してください。

coherence-session-urldecode-bycontainer

trueに設定した場合は、コンテナのURLセッションIDのデコードが使用されます。coherence-session-urlencode-nameがオーバーライドされている場合は、この値をfalseに設定する必要があります。コンテナによっては、この値をfalseに設定しても機能しない場合があります。

値を指定しない場合、このパラメータはデフォルトでtrueに設定されます。

WebLogic SPI実装でこのコンテキスト・パラメータを使用した場合は、Coherence*Webの動作を制御できません。

coherence-session-urlencode-bycontainer

trueに設定した場合は、コンテナのURLセッションIDのエンコードが使用されます。この値をtrueに設定すると、事前に指定したcoherence-session-urlencode-nameの設定と矛盾する場合があります。

値を指定しない場合、このパラメータはデフォルトでfalseに設定されます。

WebLogic SPI実装でこのコンテキスト・パラメータを使用した場合は、Coherence*Webの動作を制御できません。

coherence-session-urlencode-enabled

trueに設定した場合は、セッションIDのURLエンコードが有効になります。

値を指定しない場合、このパラメータはデフォルトでtrueに設定されます。

WebLogic SPI実装でこのコンテキスト・パラメータを使用した場合は、Coherence*Webの動作を制御できません。

coherence-session-urlencode-name

URLにセッションIDをエンコードするパラメータ名です。コンテナによっては、この値をオーバーライドできない場合があります。

指定しない場合、このパラメータはデフォルトでjsessionidに設定されます。

WebLogic SPI実装でこのコンテキスト・パラメータを使用した場合は、Coherence*Webの動作を制御できません。

coherence-session-weblogic-compatibility-mode

trueに設定した場合、各Webアプリケーションで単一セッションID (Cookieのパスを「/」に設定)は、固有のCoherence*Webセッション・インスタンスにマップされます。falseの場合、標準の動作が適用されます。つまり、WebLogic ServerのCoherence*Web SPIを使用して単一セッションIDが単一セッション・インスタンスにマップされます。WebLogic Serverにおけるその他のすべてのセッション持続メカニズムでは、各Webアプリケーションで単一のセッションIDを使用して、様々なセッション・インスタンスを参照します。

値を指定しない場合、このパラメータはデフォルトでtrueに設定されます。例外は、アプリケーションがグローバル・スコープ・コントローラを使用するように構成されている場合です。その場合は、デフォルトでfalseに設定されます。

「セッションCookieパスのスコープ設定」を参照してください。

coherence-sessioncollection-class

使用するHttpSessionCollection実装の完全修飾クラス名です。使用可能な値は次のとおりです。

  • com.tangosol.coherence.servlet.MonolithicHttpSessionCollection

  • com.tangosol.coherence.servlet.SplitHttpSessionCollection (デフォルト)

  • com.tangosol.coherence.servlet.TraditionalHttpSessionCollection

このパラメータは、値の指定が必須です。「セッション・モデルの構成」を参照してください。

coherence-shutdown-delay-seconds

アプリケーションが停止したという最後の通知をServletContextListenerイベント(サーブレット2.3以降)またはServletオブジェクトとFilterオブジェクトの破棄によって受け取ってからシャットダウンするまでにセッション管理実装が待機する時間が、この値で決まります。この値は秒単位で表します。0を指定すると同期シャットダウンになり、正の値を指定すると非同期シャットダウンになります。

一部のサーバーでは非同期シャットダウンができないため、値を指定しない場合、このパラメータはデフォルトで0に設定されます。

coherence-sticky-sessions

この値をtrueに設定した場合は、スティッキー・セッション最適化が使用されます。この設定は、スティッキー・ロード・バランサを使用している場合にのみ有効にする必要があります。この機能には、メンバー、アプリケーションまたはスレッドのロックが有効になっている必要があります。「スティッキー・セッション最適化の有効化」を参照してください。

この表のcoherence-session-thread-lockingcoherence-session-member-lockingおよびcoherence-session-app-lockingも参照してください。

値を指定しない場合、このパラメータはデフォルトでfalseに設定されます。

coherence-web-sessions-enabled

WebLogic PortalアプリケーションでCoherence*Webセッションを有効にします。詳細は、「Coherence*Webセッションの有効化」を参照してください。