栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 数据库 > 缓存机制 > Redis缓存

缓存技术介绍

Redis缓存 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力
缓存技术

缓存是为了调节速度不一致的两个或多个不同的物质的速度,在中间对速度较快的一方起到一个加速访问速度较慢
的一方的作用,比如CPU的一级、二级缓存是保存了CPU最近经常访问的数据,内存是保存CPU经常访问硬盘的数
据,而且硬盘也有大小不一的缓存,甚至是物理服务器的raid 卡有也缓存,都是为了起到加速CPU 访问硬盘数据
的目的,因为CPU的速度太快了,CPU需要的数据由于硬盘往往不能在短时间内满足CPU的需求,因此PCU缓存、
内存、Raid 卡缓存以及硬盘缓存就在一定程度上满足了CPU的数据需求,即CPU 从缓存读取数据可以大幅提高
CPU的工作效率。


缓存技术介绍插图

参考资料:http://www.sohu.com/a/246498483_468626

1.1 系统缓存 1.1.1 buffer与cache

buffer:缓冲也叫写缓冲,一般用于写操作,可以将数据先写入内存在写入磁盘,buffer 一般用于写缓冲,用于解决不同介质的速度不一致的缓冲,先将数据临时写入到里自己最近的地方,以提高写入速度,CPU会把数据先写到内存的磁盘缓冲区,然后就认为数据已经写入完成看,然后由内核在后续的时间在写入磁盘,所以服务器突然断电会丢失内存中的部分数据。
cache:缓存也叫读缓存,一般用于读操作,CPU读文件从内存读,如果内存没有就先从硬盘读到内存再读到
CPU,将需要频繁读取的数据放在里自己最近的缓存区域,下次读取的时候即可快速读取。

1.1.2 cache的保存位置

客户端:浏览器

内存:本地服务器、远程服务(如:redis,memcached)

硬盘:本机硬盘、远程服务器硬盘(如:NFS存储)

1.1.3 Cache的特性

自动过期:给缓存的数据加上有效时间,超出时间后自动过期删除

强制过期:源网站更新图片后CDN是不会更新的,需要强制是图片缓存过期 ,通过CDN管理后台实现

命中率:即缓存的读取命中率


缓存技术介绍插图(1)

1.2 用户层缓存 1.2.1 DNS缓存

默认为60秒,即60秒之内在访问同一个域名就不在进行DNS解析: 查看chrome浏览器的DNS缓存:

chrome://net-internals/#dns


缓存技术介绍插图(2)

1.2.2 火狐浏览器缓存
about:cache


缓存技术介绍插图(3)


缓存技术介绍插图(4)

1.2.3 浏览器缓存过期机制 1.2.3.1 最后修改时间

系统调用文件的时候会获取文件的最后修改时间,和本地浏览器缓存中的文件时间相比,如果没有发生变化就返回给浏览器304的状态码,表示没有发生变化,然后浏览器就使用的本地的缓存展示资源,如果服务端返回最后修改时间没有发生过变化,则直接使用浏览器的本地缓存,状态码就是304


缓存技术介绍插图(5)


缓存技术介绍插图(6)


缓存技术介绍插图(7)

1.2.3.2 Etag标记

基于Etag标记是否一致做判断页面是否发生过变化,比如基于Nginx 的etag on来实现。


缓存技术介绍插图(8)

过期时间

以上两种都需要发送请求,即不管资源是否过期都要发送请求进行协商,这样会消耗不必要的时间,因此有了缓存
的过期时间,即第一次请求资源时响应报文带有资源的过期时间,默认为30天,当前此方式使用的比较多,但是无法保证客户的时间都是准确并且一致的,因此会加入一个最大生存周期,使用用户本地的时间计算缓存数据是否超过多少天,下面的过期时间Expires:为2028年,但是缓存的最大生存周期Cache-Control: max-age=315360000,计算为天等于3650天即10年,过期时间如下:

缓存技术介绍插图(9)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/10428.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号