当前位置: 首页 > news >正文

邯郸网站建设推荐咨询wordpress cms主题

邯郸网站建设推荐咨询,wordpress cms主题,微信网站搭建教程,给我高清电影ASP.NET Core 是一个轻量级#xff0c;模块化的框架#xff0c;常用来在 Windows#xff0c;Linux 和 MacOS 上构建高性能#xff0c;现代化的web框架#xff0c;不像过去的 Asp.NET#xff0c;在 ASP.NET Core 中并没有内置 Cache 对象#xff0c;不过你可以通过 nuget… ASP.NET Core 是一个轻量级模块化的框架常用来在 WindowsLinux 和 MacOS 上构建高性能现代化的web框架不像过去的 Asp.NET在 ASP.NET Core 中并没有内置 Cache 对象不过你可以通过 nuget 上的扩展实现如下三种 cachein-memory cachingdistributed cachingresponse caching在本文中我们来看看如何将那些不易变的数据灌到内存中实现 ASP.NET Core application 的高性能然后我会用一些例子来说明这些概念。如何启用 in-memory cache 要想将 in-memory cache 集成到 ASP.NET Core 中就需要将其注入到 ServiceCollection 容器如下代码所示 public void ConfigureServices(IServiceCollection services) {services.AddMvc();services.AddMemoryCache(); }集成好之后接下来了解一下缓存的统一接口IMemoryCache 代码如下 public interface IMemoryCache : IDisposable {bool TryGetValue(object key, out object value);ICacheEntry CreateEntry(object key);void Remove(object key); }那如何在 Controller 中使用呢可以使用 Controller 的构造函数实现注入如下代码所示public class HomeController : Controller{private readonly ILoggerHomeController _logger;private IMemoryCache cache;public HomeController(ILoggerHomeController logger, IMemoryCache cache){_logger  logger;}}到现在为止in-memory caching 的配置全部做完现在可以考虑如何实现从 Cache 读取和写入了。Cache的读取和写入 利用 IMemoryCache 接口的 SetT() 可实现向缓存中写入数据请注意这个 SetT() 方法接收两个参数第一个参数是缓存的名字第二个参数就是你要缓存的内容如下代码所示public IActionResult Index(){cache.Set(IDGKey, DateTime.Now.ToString());return View();}从 Cache 中提取内容需要使用 IMemoryCache 接口的 TryGet() 方法下面是对 Index 方法的一个修改版本代码如下public IActionResult Index(){string key  IDGKey;string obj;if (!cache.TryGetValuestring(key, out obj)){obj  DateTime.Now.ToString();cache.Setstring(key, obj);}ViewBag.Cache  obj;return View();}还有一个叫做 GetOrCreate 方法从名字上就能看出来如果获取不到就会创建一个如下代码所示public IActionResult Index(){cache.GetOrCreatestring(IDGKey, cacheEntry {return DateTime.Now.ToString();});return View();}对了除了同步版本的 GetOrCreate还有一个支持异步的 GetOrCreateAsync。Cache 的过期策略 可以对缓存数据指定过期策略比如说绝对过期时间 和 滑动过期时间前者表示缓存数据的绝对存活时间时间一到就会立即移除后者表示指定的时间间隔内数据没有被访问到那么就会被移除如果不明白的化参考 Session 的过期机制。要想设置过期策略可以通过 MemoryCacheEntryOptions 类来配置如下代码所示public IActionResult Index(){MemoryCacheEntryOptions cacheExpirationOptions  new MemoryCacheEntryOptions();cacheExpirationOptions.AbsoluteExpiration  DateTime.Now.AddMinutes(30);cacheExpirationOptions.Priority  CacheItemPriority.Normal;cache.Setstring(IDGKey, DateTime.Now.ToString(), cacheExpirationOptions);return View();}值得注意的是上面的 Priority 属性它的应用场景是这样的当应用程序内存不够时要回收内存的过程中谁的优先级低就会被优先移除除了Normal 枚举还有其他诸如Low, High, NeverRemove 除了 NeverRemove 其他的几种都会被回收机制管控。新的 Cache 机制还提供了一个????????的方式那就是 回调函数 注入意味着当 cache 过期被移除时会自动触发你指定的回调函数你可以在 回调函数 中做一些你自定义的业务逻辑比如重新给 cache 注入值如下代码所示public IActionResult Index(){MemoryCacheEntryOptions cacheExpirationOptions  new MemoryCacheEntryOptions();cacheExpirationOptions.RegisterPostEvictionCallback((obj1, obj2, reason, obj3) {//callback}, this);cache.Setstring(IDGKey, DateTime.Now.ToString(), cacheExpirationOptions);return View();}你甚至还可以配置两个 cache 的依赖关系举个例子如果某一个 cache item 被移除了你希望它关联的 cache 也要自动移除看起来是不是很 nice篇幅有限我会在后面的文章中和大家阐述如何去实现如果你很想知道可先参考微软的MSDNhttps://docs.microsoft.com/en-us/aspnet/core/performance/caching/memory?viewaspnetcore-5.0译文链接https://www.infoworld.com/article/3230129/how-to-use-in-memory-caching-in-aspnet-core.html?nsdrtrue
http://www.zqtcl.cn/news/843597/

相关文章:

  • 什么类型的公司需要做建设网站的iis7 网站权限设置
  • 信誉好的商城网站建设火车头 wordpress 发布
  • 龙岩做网站抚顺 网站建设
  • wordpress怎么设置广告位青州网站优化
  • 网站的备案编号高端网站建设谷美
  • 佛山智能网站建设地址设计资溪做面包招聘的网站
  • 荆州网站建设多少钱国外网站设计理念
  • 网站备案成功后wordpress文字加框
  • 中小企业怎么优化网站西安网站建设求职简历
  • 网站开发者模式怎么打开商城网站建设特点有哪些
  • 网站登录按纽是灰色的做网站的前途怎么样
  • 常州城乡建设局网站霸榜seo
  • 网站响应样式如何制作自己的公众号
  • 网站的友情连接怎么做免费收录链接网
  • 太原网站设计排名wordpress 设置语言
  • 南京模板建站定制网站网站单页面怎么做的
  • 宁夏住房建设厅网站石家庄最新今天消息
  • 写网站软件tomcat部署wordpress
  • 怎么做下载网站吗分析一个网站
  • 网站建设禁止谷歌收录的办法做挂网站
  • 佛山优化网站公司做购物网站需要多少钱
  • 山东网站建设维护营销型网站是什么样的
  • 长沙营销网站建设苏州风险区域最新
  • 个人网站百度推广收费wordpress发邮件慢
  • 三门峡网站设计wordpress 去掉功能
  • 网站小程序开发公司wordpress 用户授权
  • 做外贸的几个网站响应式网站wordpress摄影
  • 专业建设网站技术wordpress 虚拟资源
  • 广告网站设计哪家快网站建设外包包含内容
  • 网页游戏网站模板张家口住房和城乡建设部网站