IDistributed Cache
ASPのプロバイダー.NET Core 古いASP.NET framework スタンドアロンであるため、マルチサーバー環境のニーズを満たさないASP.NETキャッシュを提供しました。 また、「カスタム」のサードパーティキャッシュプロバイダーがプラグインすることを許可しなかったため、組み込みのスタンドアロンInProc実装で立ち往生していました。
さて、新しいASP.NET Core その問題を修正し、 IDistributedCache
マルチサーバー環境(負荷分散されたWebファームなど)でキャッシュを処理するためのインターフェイス。 これが何ですか IDistributedCache
インターフェイスは次のようになります(これらの各メソッドにも非同期オーバーロードがあることに注意してください)。
namespace Microsoft.Extensions.Caching.Distributed
{
public interface IDistributedCache
{
// These methods also have overloads for “Async”
byte[] Get(string key);
void Refresh(string key);
void Remove(string key);
// Absolute expiration & sliding expirations possible
void Set(string key, byte[] value,
DistributedCacheEntryOptions options);
}
}
さらに、ASP.NET Core IDistributedCache
インターフェイスは設計によりプラグイン可能であり、選択したサードパーティプロバイダーを使用できます。 NCache のプロバイダーを実装しました IDistributedCache
ASPにプラグインできること.NET Core アプリケーションをシームレスに。 このように、に固有のコードを変更する必要はありません NCache.
IDistributedCache
プロバイダーそして、これが設定方法です NCache ASPのID分散キャッシュプロバイダーとして.NET Core スタートアップクラス:
public class Startup {
...
public void ConfigureServices (IServiceCollection services) {
...
services.AddNCacheDistributedCache();
...
}
...
}
IDistributedCache
それはあなたにプログラムするための多くの柔軟性を与えます IDistributedCache
選択したサードパーティの分散キャッシュをプラグインできるようになったため、インターフェイス。 ただし、その柔軟性には次のようなコストがかかります。 IDistributedCache
インターフェイスは非常にシンプルで基本的です。 その結果、いくつかの非常に重要な分散キャッシング機能の恩恵を受けることができません。
前もって少し余分な努力をして使用する場合 NCache APIを直接使用すると、さまざまな種類のAPIから大きなメリットが得られます NCache 次のような高度なキャッシュ機能:
すべてについてもっと知る NCache 機能を使用 それはあなたに役立ちます。
NCache よりもはるかに良い選択です Redis 次の理由による.NETアプリの場合:
NCache 次のXNUMXつのエディションがあります。
NCache Open Source
NCache Professional
NCache Enterprise
各エディションの詳細については、を参照してください。 エディションの比較。 または、以下のいずれかのオプションを選択してください。