当前位置:首页 > 技术分享 > 详情
sousuo
sousuo

缓存有哪些种类?怎么处理网站缓存问题

上传时间:2022-09-17            浏览次数:65

缓存是一个神奇的存在,而又不可获取。因为缓存可能一定程度上对网站浏览进行加速,但也带来一些困扰,就是当你更改一些东西的时候,他就不行了。所以,每天我们都要给客户解释各类缓存问题。今天就总结一下,网站方面的缓存主要有哪些:

一、程序缓存

正常状态下程序需要去读取数据库,而读取之后再进行计算加工,做成页面返回给客户端。这个过程就会有数据库读写环节,有一定延迟。所以很多程序都是读取一次数据库,就给数据缓存下来,以后有类似访问的时候直接调用,而不需要进行读取,这样会大大加快网站的访问速度。

但也就是这个缓存,会成为很多人的噩梦。比如:网站修改两个字,前端页面怎么刷新都不会有变化。因为:

需要清除程序的缓存!

清除了这个缓存,就是告诉程序,下次有人访问直接去请求数据库吧!

当然,有的网站是静态生成的,跟缓存是一样的,生成静态之后就相当于是进行了缓存。如果是修改了网站内容,就需要重新生成一遍。

二、CDN缓存

有的网站做的有CDN,就是给网站分发的不同的服务器上,这个时候网站页面会在用户访问的过程中,经过多个不同的可能的分发的服务器。比如说A服务器、B服务器、C服务器,他们更新的周期也是不同步的。

比如上海,访问的时候去A服务器

比如南京,访问的时候去B服务器

比如郑州,访问的时候去C服务器

如果后台做了修改,也更新了后台的缓存,CDN还没有到需要更新的时候,就会造成怎么刷新都不能看到最新内容的情况。这个时候怎么办呢?要刷新所有的缓存,才可以。或者是等待缓存过期,他就会抓取新的数据了。

这个时候也会出现,上海访问是最新的,而南京、郑州访问他就不是不是最新的,这种“奇怪的”现象。因为他们的分发时间可能是不同步的。

三、浏览器缓存(常见的)

这是很长的缓存类型。大部分普通网站修改之后,都与这个有关系。因为网站使用各种不同的素材组合而成,有HTML文件,CSS文件,JS文件,图片素材等。

如果是右键刷新,只能把HTML变成最新的。而CSS、JS、图片往往都不会变成最新。

那么,比较有效的办法就是在浏览器上找到“刷新全部缓存”类似的字样,才可以完成浏览器缓存的刷新。

四、其他不常见的缓存

还有一些缓存是大家平时不常见的,比如说,服务器上的配置缓存,当你修改了网站的某一个配置之后,他不会立马生效,可能需要重启服务器或者重启某一些服务。还有域名解析的时候可能会遇到缓存,这个相对也常见,快的三五分钟,慢的地方一两个小时都会出现。

可以说,缓存问题无处不在,而这个东西却必须存在。那么只有正确认识缓存并且合理利用好缓存,就可以更好地让他为我们服务。而不是在遇到缓存的时候手足无措。

发表评论
请遵守网络文明公约,理性发言
访客头像

还没有人来评论,快来抢个沙发吧!

0371-56789390
公司地址

郑州市花园路东风路向西300路南弘熹台22层

联系我们