チュートリアル: MongoDBプロバイダーを使用した共有セッション状態データベースの構成
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
連絡先は、異なるデバイスまたはブラウザーセッションから同時にWebサイトに複数回アクセスできます。共有セッション状態を使用すると 、セッション状態データベースは 、これらの複数のセッション間で共有できるすべてのデータを収集します。これには、たとえば、連絡先やデバイスに関連するデータが含まれます。このデータは引き続き連絡先に対して非公開ですが、同じ連絡先によって行われた現在のすべてのセッションからアクセスできます。
コンテンツ配信 (CD) サーバーでは、1つのスタンドアロンCDサーバー、複数のCDサーバー、またはクラスター環境のいずれを使用しているかに関係なく、常に共有セッション状態を構成する必要があります。
共有セッション状態は、コンテンツ管理サーバーではサポートされていません。
共有セッション状態は、抽象クラス (ASP.NETに付属) を拡張する任意のセッション状態ストア プロバイダーを使用するように構成できますSessionStateStoreProviderBase 。唯一の追加要件は、セッション状態ストア プロバイダーがSessionStateItemExpireCallbackを介してSessionEnd イベントを呼び出すことができることです。
ASP.NETに付属する標準OutOfProcSessionStateStoreはSessionEndイベントをサポートしていないため、共有セッション状態と共に使用することはできません。
xDB Cloud Editionを使用している場合、MongoDBの共有セッション ステート プロバイダーの使用は、このサービスの一部として含まれていません。
このセクションの手順に従って、MongoDBセッション データベースのデプロイ、Sitecoreの設定、セッション状態設定の調整Sitecore ASP.NET Session State Provider for MongoDBを使用して、MongoDBデータベースを共有セッション状態ストアとして使用します。
MongoDBセッション データベースをデプロイする
MongoDBセッション データベースをデプロイする
Sitecore ASP.NET MongoDB用セッション状態プロバイダーを使用すると、MongoDBをセッション状態ストアとして使用できます。プロバイダーは、xDBがWebサイトへのアクセスを追跡するために必要なSessionEnd イベントをサポートしています。
MongoDBセッションデータベースをデプロイするには、次のようにします。
-
MongoDB Webサイトの指示に従って、MongoDBデータベース サーバー バージョン2.6以降を専用サーバーにインストールします。
-
適切なXMLエディタで、<sitename>\Website\App_ConfigにあるConnectionStrings.configファイルを開き、次の接続文字列を追加します。
-
セッション・データベースを指すように接続文字列を構成します。
-
変更を保存します。
Sitecoreの設定
Sitecoreの設定
設定ファイルを直接変更しないでください。代わりに、実行時に必要な変更を実行する パッチ ファイル を作成する必要があります。
MongoDBの共有セッション状態プロバイダーを使用するようにSitecoreを設定するには:
-
Webサイトのルート フォルダーで、\App_Config\Marketing.Trackingフォルダーに移動します。
-
Sitecore.Analytics.Tracking.configファイルを開きます。
-
デフォルトの共有セッション状態プロバイダを定義できる行を、sitecore/tracking/sharedSessionStateのパスで見つけます。
-
デフォルトの共有セッションストアは、inProcプロバイダーを使用します(データをメモリに格納し、内部ASP.NETクラスInProcSessionStateStoreに実装します)。
手記クラスター環境の場合、SitecoreにはMongoDBセッション状態ストア プロバイダーが付属しています。
-
MongoDBを共有セッション状態ストア プロバイダーとして構成するには、defaultProviderをinProcからmongoに変更します。また、name属性値をmongoに変更します。
セッション状態の設定を調整する
セッション状態の設定を調整する
Sitecoreでは、セッション状態を設定するときに、次の設定オプションがあります。
|
設定 |
形容 |
価値 |
|---|---|---|
|
connectionStringName |
Sitecoreがセッション データベースへの接続に使用する接続文字列を指定します。 編集して、使用するセッション状態データベースを指定します。 |
例えば: connectionStringName="sharedsession" |
|
pollingInterval |
セッション状態プロバイダーがセッションの有効期限が切れているかどうかを確認するために使用する時間間隔を秒単位で指定します。 |
例えば: pollingInterval="2" |
|
compression |
セッション状態データを圧縮することを指定します。 デフォルト値はtrueです。セッション状態データを圧縮すると、データベースとSitecoreインスタンス間で転送する必要があるデータの量が減ります。これにより、追加のCPUオーバーヘッドが発生する可能性があります。 |
例えば: compression="true" |
|
sessionType |
セッション・ステートのタイプがsharedであることを指定します。 |
有効な値のみ: sessionType="shared" |