ID分布式缓存 ASP.NET Core 提供程序

增强您的 ASP.NET 应用程序

传统的 ASP.NET 框架依赖于 ASP.NET Cache 仅限于单服务器(InProc),缺乏对多服务器环境的支持。它也不允许与第三方分布式缓存集成。因此,开发人员被迫依赖低效的独立缓存机制。

微软通过引入 ASP.NET Core 解决了这些挑战。 ID分布式缓存,可扩展、多服务器缓存解决方案的接口。 NCache 它很容易与 IDistributedCache 集成,从而为您的 ASP.NET Core 应用程序提供高性能, 功能丰富的缓存层.

 

什么是 IDistributedCache?

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);
}
 

为什么选择 NCache 对于 IDistributedCache?

许多缓存解决方案,例如 内存分布式缓存仅限于单个服务器,因此不适合需要 可扩展性高可用性. NCache另一方面,它是一个专为 .NET 应用程序设计的真正的分布式缓存解决方案,可确保更好的性能和可扩展性。

的主要好处 NCache

  • 100% 原生 .NET - 完全兼容并优化 .NET 应用程序.
  • 高性能和可扩展性 - 实现快速数据检索并支持无缝水平扩展。
  • 高级缓存功能 - 支持 SQL 查询、发布/订阅消息传递以及 缓存同步.
  • 高可用性和可靠性 - 通过内置故障转移支持确保数据一致性。
  • 优化序列化 - 通过高效的序列化减少延迟并提高性能。

无缝 NCache 与 IDistributedCache 集成

整合 NCache 使用 ASP.NET Core 应用程序非常简单。您可以插入插件。 NCache 无需修改现有应用程序逻辑。这样您就可以从内存缓存顺利过渡到高可用性分布式缓存。

 

配置 NCache 作为您的 IDistributedCache 提供程序

  • 第三步: 安装 NuGet 包 在程序包管理器控制台中运行以下命令来安装 IDistributedCache 提供程序。
    Install-Package Alachisoft.NCache.DistributedCache
  • 第三步: 立即注册 NCache in 程序.cs 立即注册 NCache 在 ASP.NET Core 应用程序的启动文件中,如下所示:
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
    }
}

这确保了生产环境中的可扩展性、容错性和高可用性。

 

NCache API:比IDistributedCache丰富得多

ID分布式缓存 接口提供了一个基本的键值存储,它很有用,但功能相当有限。 NCache 通过提供广泛的高性能缓存 API,为企业应用程序提供强大的分布式缓存。

特性 标准 IDistributedCache(基础版) NCache API(企业版)
查询灵活性 仅键值查找 SQL 和 LINQ 查询
资料组织 扁平结构 标签和命名标签
数据的完整性 独立项目 缓存依赖关系
实时消息传递 不支持 发布/订阅消息
数据库同步 需要手动编码 自动读取和写入
数据可用性 启动时为空 缓存加载器和刷新器
 

主要优点 NCache API

通过使用 NCache API,组织可以克服IDistributedCache的限制,为其.NET应用程序释放增强的性能、灵活性和企业级缓存。

 

开始使用 NCache 今天!

准备好使用高性能分布式缓存优化您的 ASP.NET Core 应用程序了吗?了解更多 NCache 并利用其强大的功能。

常见问题

不。因为 NCache 它实现了标准的 IDistributedCache 接口,您只需在 Program.cs 中更改配置即可,无需更改业务逻辑。

NCache 它将数据存储在内存(RAM)中,速度比 SQL Server 基于磁盘的存储快得多。它还消除了与基于 SQL 的缓存相关的序列化开销和网络延迟。

是的。您可以继续使用诸如 SetAsync、GetAsync 和 RemoveAsync 之类的标准方法。但是, NCache 还可以将缓存实例转换为 ICache,以解锁标签和 SQL 查询等高级功能。

联系我们

联系电话

+1 214-619-2601 (美国)

+44 20 7993 8327 (英国)

©版权所有 Alachisoft 2002 - 版权所有。 NCache 是 Diyatech Corp. 的注册商标。