缓存学习总结1(缓存分类)

要想提升网站的性能,提高访问速度,使用缓存是一个很好的解决方案。

缓存的作用:

1.缩短网络路径,加快访问速度。

2.减少请求,降低服务器压力。

缓存分类:客户端缓存、CDN缓存、反向代理缓存、服务器本地缓存、服务器分布式缓存。

客户端缓存:

浏览器第一次请求服务器时,浏览器中没有缓存数据,直接向服务器请求获取数据,获取到数据后将数据缓存下来。

当浏览器再次向服务器发送同一请求时,浏览器会自动检测缓存中有没有对应数据,如果有,则查看是否过期,过期则根据相关策略再次从服务器上获取新的数据,并将新的数据缓存到浏览器中。如果缓存中的数据没有过期,则直接将缓存中的数据呈现到页面上。

浏览器能够在本地保存网站中的图片或者其他文件的副本,这样用户再次访问该网站的时候,浏览器就不用再下载全部的文件,减少了下载量意味着提高了页面加载的速度。

客户端缓存只影响当前用户。

CDN缓存:

没有使用CND缓存时,用户在浏览器中输入域名,本地DNS服务器会对域名进行解析并返回域名对应的IP地址,浏览器获取到IP地址后访问该IP,服务器对请求作出相应并返回数据,浏览器将数据渲染到页面上。

没有使用CDN缓存时,客户端和服务器的交互模型: 

使用CND缓存时,用户在浏览器中输入域名,智能DNS解析(根据IP判断地理位置、接入网类型、选择路由最短和负载最轻的服务器),取得缓存服务器IP,根据IP发出访问请求,如果缓存服务器中有相关内容,则直接把数据返回给客户端,如果没有,则向源站发送请求,将数据返回给用户,同时将结果数据存入缓存服务器。

使用CDN缓存后,客户端浏览器先检查是否有本地缓存是否过期,如果过期,则向CDN边缘节点发起请求,CDN边缘节点会检测用户请求数据的缓存是否过期,如果没有过期,则直接响应用户请求,此时一个完成http请求结束;如果数据已经过期,那么CDN还需要向源站发出回源请求(back to the source request),来拉取最新的数据。

客户端和服务器的交互模型: 

CDN的典型拓扑图如下:

CDN缓存适合更新很少的静态文件。站点或者应用中大量静态资源的加速分发,例如:css、js、图片、大文件、HTML等。可以设置哪些文件使用CDN进行缓存。

CDN缓存影响一批用户。

 反向代理缓存:

反向代理缓存影响所有访问用户。

服务器本地缓存:

利用程序将数据缓存在服务器的内容中。

详细使用参见文章:https://blog.csdn.net/liangmengbk/article/details/118464951

服务器分布式缓存:

常用的有redis、memcached等。

关于redis系列文章:

Redis安装教程

Redis之string数据类型

Redis之hash数据类型

Redis之set数据类型

Redis之zset数据类型

Redis之list数据类型​​​​​​​

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值