缓存那些事

Mickey

IT工程师 - Mickey

2021年9月3日
缓存那些事

在你试图打开一个新网页时,网页打开很慢很慢,但是当你在第二次打开网页时,网页“咻”地一下打开了,然而,很神奇的是,当你在几天后再次打开这个网页时,一切都回到了原点。除去其他的一些不可抗力因素,原来是缓存在 “捣鬼”。缓存,相信大家都耳熟能详了,但是个中的弯弯道道,不知你是否清楚,那么今天就来聊聊缓存那些事。

为什么会有缓存?

缓存是将网站的资源(如image、css、js等)储存在服务器和浏览器之间的副本,保存副本中的资源,并且在下次浏览器再次请求时使用该副本。当网站缓存发现请求的资源已经被存储好了,它就会拦截发送的请求,返回存好的副本,而不是再次在服务器端下载资源。这样可以在下次浏览网站时,提高网站速度;缓解服务器压力,提高网站性能。

缓存的好处

  • 请求次数减少,服务器减负,网站性能大大提高;
  • 冗余的数据传输减少,节省网费开支,加快了浏览器加载网页的速度;
  • 数据库的访问次数降低,减少数据库负担,提高服务器的服务能力;
  • 高性能,在缓存中查询的速度比在数据库查询快,内存查询,逻辑简单运算;
  • 降低了客户访问延迟,直接从缓存读取,而不是远程服务器;
  • 减少网站流量,减少服务器访问拥堵。

缓存机制?

网站在首次加载网页内容时,一般在你的浏览器是没有缓存的。此时,浏览器向服务器进行请求,我现在是没有缓存的状态,请求响应,进行缓存协商,最后呈现网页内容。

当你再次加载网页内容时,浏览器发送请求,因为此时是有缓存状态了,那么就会判断缓存是否过期,然后进行一系列操作:倘若缓存还未过期,那么直接从缓存读取,给浏览器呈现缓存好的资源。

缓存已过期?那么服务器就会收到来自浏览器发送的头部带有If-None-Match和If-Modified-Since的请求信息;服务器收到请求过后,会对Etag值进行判断,被请求的文件是否有修改,如果有,则返回更新的资源文件并返回200状态码,否则,返回304;如果服务器收到的请求信息里,没有包含有Etag值,则将比对If-Modified-Since和被请求文件的最后修改时间,一致返回304,否则返回新的last-modified和资源文件并返回200状态码。

总结

对于网站而言,缓存是能使其达到高性能的中流砥柱,但是缓存是需要合理配置的,毕竟不是所有的缓存都是一成不变的,一个网站资源的缓存在下一次发生改变时,那么它的使命也就完成了。当浏览器多次访问同一个网页资源时,首先会判断网站的缓存副本是不是新鲜的,如果不是,那么需要从服务器获取最新的版本。

原创文章归Sytech版权所有,转载请注明出处。

Mickey

IT工程师 - Mickey

Sytech科技IT工程师,专注于网络搭建和网站SEO优化,擅长于网站数据分析和海外网站运营、维护。

2021年11月16日

网站建设

外贸网站,有些事告知谷歌“宜早不宜迟”

为什么世界各地的人在外贸建站时,都不遗余力地打造网站本地版本?个中缘由肯定包含有希望能够提高用户体验,将更多的潜在用户变成会员客户,促进外贸成交率。开发管理网站的多语言功能,用户在使用网站时,跨越了地理位置和不同语言,都能够享有同样流畅地情感。由此,倘若你的网站有做关于网站本地化版本,要尽快将此重大变更告知谷歌,此时宜早不宜迟。

Zoao

前端工程师 - Zoao

了解更多

2021年11月29日

网站建设

一文知悉停用网站的窍门

网站的经营就犹如心电图般,起起伏伏,但是“风雨过后会有彩虹”,专业人士表示,当你在网站业务发生变革时,首先不要轻易考虑停用网站。毕竟,网站辛辛苦苦积攒的人气,可不能随便舍弃了。但当你迫不得已要使用时,熬过这一段风霜,那么网站的运营也就更加应对自如了。

Ever

前端工程师 - Ever

了解更多

想要马上开始定制开发您的网站建设?

添加微信咨询 扫描二维码添加微信客服

微信二维码 微信客服

其它联系方式

Sytech科技电话

邮寄联系地址 广州市番禺区洛浦街东乡村南桂路2号丽阁商务中心四楼403 联系服务热线 020-84808073