ウォークスルー
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
共有セッション状態では、複数のセッションで共有可能なすべてのデータ、例えば連絡先に関するデータは、セッション状態データベースに保存されます
連絡先は複数の並行訪問を行うことができ、その場合各訪問は独自のプライベートセッション状態を持ちます。しかし、訪問間で連絡先情報を共有することもあります。
同じ連絡先による並行訪問間で共有される情報は、共有セッションの状態ストアに保存されます。このデータは連絡先にとっては依然としてプライベートですが、同じ連絡先が作成したすべての現在セッションからアクセス可能です。
このウォークスルーでは、RedisのSitecoreセッションステートプロバイダーを使って、Redisをアウトオフプロセスの共有セッションステートストアとして使う方法を説明します。
このウォークスルーでは、以下の方法を説明します:
- 共有のRedisセッションデータベースを展開する
- Sitecoreの設定
- 専用のRedis Session Processingサーバーを設定
- Redisのプロバイダー設定を調整してください
!注SitecoreはRedis Clusterをサポートしていません。
共有のRedisセッションデータベースを展開する
Sitecore ASP.NET for Redisのセッションステートストアプロバイダーは、Rdisをセッションステートストアとして使うことを可能にします。プロバイダーはSessionEndイベントをサポートしており、xDBはウェブサイト訪問を追跡するために必要なものです。
!重要設定ファイルに直接変更を加えないでください。代わりに、実行中に必要な変更を行う パッチファイル を作成しなければなりません。
Redisセッションデータベースを展開するには:
-
Azure RedisかRedisオンプレミスのどちらかを選べます。 Microsoft Azureウェブサイト の指示やAzure PowerShellを使ってAzure Redisをプロビジョニングできます。
-
\App_Configフォルダに行き、ConnectionStrings.configファイルを開き、以下の接続文字列を追加してください: -
接続文字列をセッションデータベースを指すように設定してください。
-
変更を保存してください。
Sitecoreの設定
デフォルトの共有セッションストアは、イン プロセス プロバイダーを使用し、これはメモリにデータを保存し、内部のASP.NETクラスInProcSessionStateStoreで実装されています:
!重要設定ファイルに直接変更を加えないでください。代わりに、実行中に必要な変更を行う パッチファイル を作成しなければなりません。
SitecoreをRedisの共有セッションステートプロバイダーを使用するように設定するには:
-
ウェブサイトのルートフォルダでApp_Config\Sitecore\Marketing.Trackingフォルダに移動します。
-
Sitecore.Analytics.Tracking.Configファイルを開け。
-
デフォルトの共有セッション状態プロバイダーを定義できる行を次のパスで見つけてください: sitecore/tracking/sharedSessionState。
-
sharedSessionStateセクションをdefaultProviderとしてRedisを更新し、inProcではなく、以下の例で示しています。また、name属性の値をredisに変更する必要があります。
Redisのプロバイダー設定を調整してください
Redisプロバイダー設定の参照を使ってセッション状態を設定してください。すべて正しく設定されていれば、最初のウェブリクエストの後にセッションレコードがRedisのセッションデータベースに表示されます。