C#中使用IMemoryCache实现内存缓存
2021-05-15 14:29
标签:time turn sharp 高性能 控制器 实例 构造函数 new sdn 缓存是实际工作中非常常用的一种提高性能的方法。 缓存可以减少生成内容所需的工作,从而显著提高应用程序的性能和可伸缩性。 缓存最适用于不经常更改的数据。 通过缓存,可以比从原始数据源返回的数据的副本速度快得多。 Microsoft.Extensions.Caching.Memory C#中使用IMemoryCache实现内存缓存 标签:time turn sharp 高性能 控制器 实例 构造函数 new sdn 原文地址:https://www.cnblogs.com/netcore5/p/14697822.html1 缓存基础知识
2 使用内存缓存(IMemoryCache)
首先
,我们简单的创建一个控制器,实现一个简单方法,返回当前时间。我们可以看到每次访问这个接口,都可以看到当前时间。[Route("api/[controller]")]
[ApiController]
public class CacheController : ControllerBase
{
[HttpGet]
public string Get()
{
return DateTime.Now.ToString();
}
}
然后
,将Microsoft.Extensions.Caching.Memory的NuGet软件包安装到您的应用程序中。
接着
,使用依赖关系注入从应用中引用的服务,在Startup类的ConfigureServices()方法中配置:public void ConfigureServices(IServiceCollection services)
{
services.AddMemoryCache();
}
接着
,在构造函数中请求IMemoryCache实例private IMemoryCache cache;
public CacheController(IMemoryCache cache)
{
this.cache = cache ?? throw new ArgumentNullException(nameof(cache));
}
最后
,在Get方法中使用缓存[HttpGet]
public string Get()
{
//读取缓存
var now = cache.Get