ASP.NET Core セッションストレージ戦略 NCache 分散キャッシュ
MicrosoftがASP.NET 5をASP.NET Coreに名称変更したことで、 NCache 新しいアーキテクチャをサポートするために、ASP.NET Core Cache 用のセッション状態管理が導入されました。 NCache セッションと強化されたキャッシュ機能を組み合わせるための柔軟なオプションを提供し、アプリケーション全体の拡張性と高可用性を確保します。デフォルトの ASP.NET Core セッションを次の場所に保存できるようになりました。 NCache または使用 NCacheASP.NET Core モジュールの拡張メソッドを介してセッション状態管理サービスを使用して、カスタム構成のセッションを作成および保存します。 NCacheの分散アーキテクチャ。
使用する主な利点 NCache ASP.NET Core セッション用
排他的セッションロック: NCache セッション管理は、排他セッションロックを提供することでASP.NET Coreセッションを強化し、デッドロックやデータ整合性の侵害を防ぎます。ロックは設定可能で、デフォルトでは無効になっています。
リリース再試行のロック: 排他ロックを使用する場合、ロックの再試行も構成されます。同時リクエストの場合、 NCache ロック解除を設定された回数だけ再試行します。
クラスタートポロジ: セッションの場合、によって提供されるさまざまなクラスタリングトポロジ NCache 使用できます。レプリケートされたトポロジはクライアントの負荷分散を提供するため、ASP.NET Core アプリケーションはトラフィックが集中しても影響を受けません。 パーティション-レプリカ キャッシュが使用されると、アプリケーションに高いスケーラビリティと信頼性が提供され、より高速なトランザクションが実行されます。
信頼性: デフォルトでは、セッションは ASP.NET プロセスのメモリに保存されます。プロセスがリサイクルされたり、アプリケーション サーバーがダウンしたりすると、セッション データは失われます。 NCacheセッションデータは、ASP.NET プロセスの外部にあるキャッシュクラスタに保存されます。信頼性のニーズに合わせて、任意のキャッシュトポロジを選択できます。そのため、アプリケーションサーバーが利用できない場合でも、ASP.NET プロセスが再起動したり、アプリケーションサーバーが再び稼働したりすると、セッションデータは引き続き利用可能です。
スケーラビリティ: NCache セッションはストレージとしてインメモリキャッシュを使用しますが、クラスタ化されたキャッシュはさらに優れたスケーラビリティを提供します。クラスタ環境では、実行時にセッションクラスタにサーバーを追加できるため、アプリケーションのスケーラビリティと信頼性が向上します。したがって、Webファーム向けのASP.NETセッションクラスタリングは、データベースに保存するよりも高速でスケーラブルです。
可用性、負荷分散、およびフォールト トレランス: Webファーム環境では、 NCache ASP.NET Core Sessions を使用すると、クラスタ化されたキャッシュ内のすべてのサーバーノードでセッションデータを利用できるようにすることで、耐障害性が向上します。また、セッションをファーム内の複数のサーバーに分散できるため、より大きな負荷にも対応できます。
キャッシュでのセッションルックアップが簡単になりました: キャッシュ内のすべてのセッション データは、次の方法で XNUMX 回の呼び出しで取得できます。 HttpContext.Session ASP.NET Core において。
より良いパフォーマンス: セッション データは ASP.NET アプリケーションに近いメモリ内キャッシュに保存されるため、最大のパフォーマンスが得られます。
ASP.NET Core セッションストレージ戦略
NCache ASP.NET Core のサポートを 2 つの方法で提供します。まず、 NCache セッション管理サービスは、ASP.NET Core セッションの拡張機能です。次に、ASP.NET Core セッションは、 NCache 分散キャッシング。このセクションでは、ASP.NET Core セッションストレージの使用に関する完全なガイドを提供します。 NCache、その構成、および実装。
このセクションの内容
構成 NCache ASP.NET Core セッションプロバイダー
サービスの構成と使用に関する段階的な情報を提供します。 NCache ASP.NET Core セッションのプロバイダー。
使い方 NCache ASP.NET Core を使用
ASP.NET Core セッションを使用してセッションを保存する方法について説明します。 NCache IDistributedCacheプロバイダー。
ASP.NET とのセッション共有
ASP.NET Core セッションを ASP.NET セッションと共有および更新する方法、およびその逆の方法について説明します。