従来のASP.NETフレームワークは、 ASP.NET Cacheは単一サーバー(InProc)に限定されており、複数サーバー環境をサポートしていませんでした。また、サードパーティ製の分散キャッシュとの統合も不可能でした。その結果、開発者は非効率的なスタンドアロンのキャッシュメカニズムに頼らざるを得ませんでした。
Microsoft は、ASP.NET Core を導入することでこれらの課題を解決しました。 I分散キャッシュスケーラブルなマルチサーバー キャッシュ ソリューションのインターフェイスです。 NCache IDistributedCache との統合が容易で、ASP.NET Core アプリケーションに高性能、 機能豊富なキャッシュ層.
IDistributedCacheインターフェースは、複数のサーバー間で動作する集中型のキャッシュメカニズムを提供するため、クラウドネイティブの コンテナ化された, マイクロサービスベース アーキテクチャ。標準インターフェースは契約を定義するが、 NCache サーバーの再起動後もデータが保持され、トラフィックに応じて線形に拡張されることを保証する実際の分散実装を提供します。
using Microsoft.Extensions.Caching.Distributed;
using System.Threading;
using System.Threading.Tasks;
public interface IDistributedCache
{
byte[]? Get(string key);
Task<byte[]?> GetAsync(string key, CancellationToken token = default);
void Refresh(string key);
Task RefreshAsync(string key, CancellationToken token = default);
void Remove(string key);
Task RemoveAsync(string key, CancellationToken token = default);
void Set(string key, byte[] value, DistributedCacheEntryOptions options);
Task SetAsync(string key, byte[] value, DistributedCacheEntryOptions options, CancellationToken token = default);
}
多くのキャッシュソリューション、例えば メモリ分散キャッシュは、単一のサーバーに制限されているため、 スケーラビリティ (NAIST) と 高可用性. NCache一方、は、.NET アプリケーション専用に設計された真の分散キャッシュ ソリューションであり、より優れたパフォーマンスとスケーラビリティを保証します。
統合 NCache ASP.NET Core アプリケーションでは、プラグインは簡単です。 NCache 既存のアプリケーション ロジックを変更することなく、メモリ内キャッシュから可用性の高い分散キャッシュにスムーズに移行できます。
Install-Package Alachisoft.NCache.DistributedCache
var builder = WebApplication.CreateBuilder(args);
// Register NCache as the IDistributedCache provider
// Benefits: Multi-server scalability, High Availability, and 100% Native .NET
builder.Services.AddNCacheDistributedCache(options =>
{
options.CacheName = builder.Configuration["NCache:CacheName"];
// NCache settings can be dynamically adjusted in appsettings.json
// ensuring zero-downtime configuration changes
});
var app = builder.Build();
app.MapControllers();
app.Run();
あるいは、 NCache に選出しました。 アプリ設定.json ファイルと設定を動的に読み込みます。
{
"NCacheSettings": {
"CacheName": "myCache",
"EnableLogs": true,
"EnableStatistics": true
}
}
これにより、運用環境でのスケーラビリティ、フォールト トレランス、高可用性が保証されます。
その I分散キャッシュ インターフェースは基本的なキー値ストアを提供しますが、これは便利ですが、機能はかなり制限されています。 NCache エンタープライズ アプリケーション向けの強力な分散キャッシュを可能にする、広範囲にわたる高性能キャッシュ API を提供することで、さらに優れた機能を提供します。
| 機能 | 標準のIDisttributedCache(Basic) | NCache API (Enterprise) |
|---|---|---|
| クエリの柔軟性 | キーと値の検索のみ | SQLとLINQクエリ |
| データ編成 | フラット構造 | タグと名前付きタグ |
| データの整合性 | 独立したアイテム | キャッシュの依存関係(関係) |
| リアルタイムメッセージング | サポートされていません | Pub / Subメッセージング |
| データベース同期 | 手動コーディングが必要 | 自動リードスルーとライトスルー |
| データの可用性 | 起動時に空 | キャッシュローダーとリフレッシャー |
使用することにより NCache API を使用すると、組織は IDistributedCache の制限を克服し、.NET アプリケーションのパフォーマンス、柔軟性、エンタープライズ レベルのキャッシュを強化できます。
高性能な分散キャッシングでASP.NET Coreアプリケーションを最適化する準備はできていますか?詳しくはこちらをご覧ください。 NCache その強力な機能を活用してください。
©著作権 Alachisoft 2002 - . All rights reserved. NCache はダイヤテック株式会社の登録商標です。