在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
浏览器缓存类型有几种?一个优秀的缓存策略可以缩短网页请求资源的距离减少延迟,并由于缓存文件可以重复利用,还可以减少带宽降低网络负荷,提高网网页页反应速度的一个方式就是使用缓存。
缓存在宏观上可以分成两类:私有缓存和共享缓存。共享缓存就是那些能被各级代理缓存的缓存。私有缓存就是用户专享的,各级代理不能缓存的缓存。微观上分类如下:
1、浏览器缓存
缓存存在的意义就是当用户点击back按钮或是再次去访问某个页面的时候能够更快的响应。尤其是在多页应用的网站中,如果你在多个页面使用了一张相同的图片,那么缓存这张图片就变得特别的有用。浏览器先向代理服务器发起Web请求,再将请求转发到源服务器。其中浏览器缓存包括强缓存和协商缓存。
2、CDN缓存
CDN缓存一般是由网站管理员自己部署,为了让他们的网站更容易扩展并获得更好的性能。通常情况下,浏览器先向CDN网关发起Web请求,网关服务器后面对应着一台或多台负载均衡源服务器,会根据它们的负载请求,动态将请求转发到合适的源服务器上。从浏览器角度来看,整个CDN就是一个源服务器,从这个层面来说浏览器和服务器之间的缓存机制,在这种架构下同样适用。
3、代理服务器缓存
代理服务器是浏览器和源服务器之间的中间服务器,代理转发响应时,缓存代理会预先将资源的副本(缓存)保存到代理服务器上。当代理再次接收到对相同资源的请求时,就可以不从源服务器那里获取资源,而是将之前缓存的资源作为响应返回。
4、数据库缓存
数据库缓存是指,当web应用的关系比较复杂,数据库中的表很多的时候,如果频繁进行数据库查询,很容易导致数据库不堪重荷。为了提供查询的性能,将查询后的数据放到内存中进行缓存,下次查询时,直接从内存缓存直接返回,提供响应效率。
5、应用层缓存
应用层缓存是指我们在代码层面上做的缓存。通过代码逻辑,把曾经请求过的数据或资源等,缓存起来,再次需要数据时通过逻辑上的处理选择可用的缓存的数据。
浏览器与服务器通信的方式为应答模式,浏览器第一次向服务器发起该请求后拿到请求结果后,将请求结果和缓存标识存入浏览器缓存,浏览器对于缓存的处理是根据第一次请求资源时返回的响应头来确定。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
有什么编程入门书籍推荐?
编程是非常重要的计算机能力,很多人在工作学习中都或多或少要涉及到编程,那么如何入门编程呢。看书是必不可少的,一些入门书籍的阅读可以帮助你更快的进入编程的世界。
4179
2020-05-28 14:23:12
什么是服务器?
在计算机领域行业常会听到服务器,也经常会遇到服务器崩溃导致的软件瘫痪和网页崩溃等情况,那么服务器究竟是怎么定义的呢?服务器是计算机的一种,它比普通计算机运行更快、负载更高、价格更贵。服务器在网络中为其它客户机提供计算或者应用服务。
3878
2020-06-02 14:04:45
零基础小白学员如何学习编程?
现在关于编程的行业十分火爆,这让许多小伙伴都动了学习编程,以后从事编程相关行业的心。但说起学习,又有许多人担心自己完全是个零经验的小白,不知该如何去学习编程。零基础小白学员如何学习编程?
4474
2020-06-11 14:56:58
删除又恢复?微软怎么惹恼了开源社区?
近日,.NET开源社区“再起波澜”。起因是微软在即将发布的 .NET 6 中悄悄删除了 Hot Reload(热重载) 的核心部分,此举彻底激怒了.NET开源社区开发者,他们强烈反对微软这种行为,认为微软此举是不利于 .NET 开源社区健康发展。
2835
2021-10-25 18:19:27
程序员如何写出简洁清晰标准的代码?
简洁的代码不仅能让阅读者方便理解程序的意图,还能方便维护与迭代,规避冗长且臃肿的代码给人一种乱糟糟的感觉。简洁的代码在维护上花费更少的时间,更易于被阅读和领会,花费更少的时间去弄清楚实际问题进而为修复、修改、以及扩展等操作留下更多的时间;更清晰地交流想法,程序开发离不开协作而简洁的代码往往可以减少项目成员之间可能产生歧义。从长远来看犯更少的错误更快地解决问题。
3316
2022-03-10 15:54:44