In-Memory

使用IMemeryCache接口

注册缓存

HomeController注入进来


建一个类,用来存缓存的常量

判断缓存里面是否有数据,如果没有就读数据库存起来。

设置缓存事件,可调的 30秒。如果缓存的值被访问了就延长30秒

绝对过期,600秒

缓存被清空之后,调用回调方法,再填充回去

Cache Tag Helper

属性:

  • enabled:是否启用
  • expires-on:绝对过期时间
  • expires-after:
  • expires-sliding
  • vary-by-header:如果请求的 header 变了,缓存就需要刷新
  • vary-by-query
  • vary-by-route
  • vary-by-cookie
  • vary-by-user
  • vary-by
  • priority

过期事件设置为30秒

分布式缓存


分布式缓存的特点

类型:

  • 分布式 Memory Cache(仅适合开发时使用)
  • 分布式 Sql Server Cache
  • 分布式 Redis Cache(推荐)

从docker中拉取redis的镜像

简历容器

正在运行



注册redis

转换成json字符串后还需要转换成byte类型

else的情况

容器内把端口暴露出来

运行页面走到断点这里了

Response 缓存

它是一种客户端的缓存,减轻服务端压力


再设置另外一个

在客户端缓存

另外一种用法

压缩


默认使用Gzip的压缩

没有详细介绍,可以看官方的文档

ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 26. 缓存的更多相关文章

  1. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 03. 服务注册和管道

    ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 03. 服务注册和管道 语雀: https://www.yuque.com/yuejiangliu/dotnet/ ...

  2. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 25. 过滤器

    在MVC的请求管道 并不是  asp.net core的请求管道.所以说Filter是专用于MVC的 贯穿特性,横穿关注点.比如授权.日志 这里的Authorize其实就是一个Filter,主要用来授 ...

  3. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 02. Web Host 的默认配置

    视频地址: https://www.bilibili.com/video/av38392956/?p=2 语雀 https://www.yuque.com/yuejiangliu/dotnet/ixt ...

  4. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 12. Views 下

    ASP.NET Core MVC 13. 安装前端库 Partial VIew 就是部分View,他没有自己的数据,数据来自图中白色的那块,它的数据需要传进去,第一个参数是View的名称,第二个参数就 ...

  5. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 04. 中间件

    注册startup类可以配置我们web应用的启动逻辑,使用的就是UseStartUp方法,asp.net core就会实例化这个类 并调用startup类里面的两个方法ConfigureService ...

  6. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 13. 安装前端库

    前端库使用npm进行安装,需要先建立webpack.json文件 因为我们没有使用npm安装任何库,所以npm的文件夹是空的 这里是用于开发时构建时引用的库写在这里 这里用到bootStrap 开发时 ...

  7. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 27. CICD Azure DevOps

    VSTS做持续集成 后来改名叫做Azure Deveps https://azure.microsoft.com/zh-cn/services/devops/ 这是中文的地址 创建一个项目 名称.描述 ...

  8. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 01. 创建项目 +项目结构和配置简介

    新建项目:Tutotial.Web 解决方案名称可以把web去掉 视频里面把git这个选项勾选了.我就不勾选了 dotnet CLI创建项目 首先必须安装好了.net Core的SDK dotnet ...

  9. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 05.Controller 的路由

    视频地址: https://www.bilibili.com/video/av38392956/?p=5 这里面就包含了MVC相关的库 可以通过打开右侧的Nuget库进行查看 这里修改下 ,只需要静态 ...

  10. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 06. Controller 返回View

    Controller父类会提供很多上下文的相关信息,还提供了很多封装的方法 返回的对象要求实现了IActionResult接口 继承父类,并引入命名空间 写this点就出现很多东西,这些就是上下文的信 ...

随机推荐

  1. python--函数嵌套 命名空间

    函数的嵌套调用 def func(): print(123) def func2(): func() print(345) func2() #结果:123 345 函数的嵌套定义 def func() ...

  2. cvpr2017年的所有论文下载

    wget -c -N  --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla   http://op ...

  3. vue directive demo

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  4. PHP debug_backtrace() 函数

    PHP Error 和 Logging 函数 实例 生成 PHP backtrace: <?php function a($txt) { b("Glenn"); } func ...

  5. IOS-RSA加解密分享

    本文转载至 http://www.cocoachina.com/bbs/read.php?tid=235527     搜索了很多资料,没找到合适的RSA方法,很多人在问这问题,解决了的同志也不分享, ...

  6. ElasticSearch(十一)批量CURD bulk

    1.bulk语法 POST /_bulk { "delete": { "_index": "test_index", "_type ...

  7. request,session,application三者关系<转>

    几乎所有的Web开发语言都支持Session功能,Servlet也不例外. Servlet/JSP中的Session功能是通过作用域(scope)这个概念来实现的. 对象作用域为:  page  在当 ...

  8. css定位的元素内层不自动扩高解决

        给最外层的CSS加上一行: 1 position: relative;             /* 给最外层加上这行 */

  9. 用ASTERISK搭建自己的免费VOIP服务器

    服务器别闲着,博主又要给大家带来新的玩法咯 1. 这里以 Debian 为例子,安装 Asterisk apt-get update apt-get install asterisk 2. 预设置 A ...

  10. Page Objects

    Page Objects 原文地址:https://github.com/SeleniumHQ/selenium/wiki/PageObjects Within your web app's UI t ...