如何进一步提升缓存命中率

lxcdn3年前 (2022-06-08)接入教程350

1、命中过程:

设置好缓存后,第一次访问的页面,会被缓存起来,是不会被命中的。第二次被访问的时候,会先检查内存(为一级快速缓存)中有无这个页面,如果内存中无,会再检查硬盘上有无此页面,如果有此页面,还会检查此页面是否已经过期,如果在缓存周期内,会直接发送给用户;如果缓存周期已经到了,则检查源站是否有更新,如果无更新,则直接发送已经缓存的页面给用户;如果源站页面有更新,则会发送最新的页面给用户,并且将旧缓存给替换掉。


2、经验之谈

一般情况下,静态资源多的网站,例如图片站,资源站,下载站等一般命中率都较高,因为这些页面资源基本上都不太经常被修改(Modified),缓存后能不断被重复用(Re-used),命中率普遍在90%以上。相反的,动态资源较多的站点,命中率会低一些,因为这些动态页面经常被源站重新生成(Re-generated),而且设置的缓存周期普遍也很短,并且很多页面可能需要拒绝缓存才可以,会造成命中率会低一些。

如果缓存的单个文件大于1MB,则必须设置缓存,将空白分区当作缓存目录,原则上你的热门文件一共有多大,那么空白分区也需要有多大。


3、影响缓存命中率的几个常见因素

a. 缓存比例:就是用户频繁访问的页面,越频繁的页面越是如此,除去必须拒绝缓存的动态页面外,例如后台管理页面等等,其它的公共访问页面尽可能的都缓存起来。这样子第二次再访问相同页面的时候,如果缓存还在有效期内(即缓存还没有过期),就会被命中。

b. 缓存周期:一些不容易更新的页面资源等,缓存周期可以设置的长一点(例如视频缓存30天),这样子用户第二次访问的时候,发现这些缓存,还在缓存周期之内,就会被命中

c. 用户访问量:用户访问量越大,一般命中率也会越高,举例,一个页面被缓存后,在缓存有效期内,被更多人访问到,也就是单位时间内被命中的次数更多,当然命中率会更高一些。相反的,如果一个页面被缓存后,很久都没有用户再一次的访问到这个页面,即使有访问到时,也已经是过期的页面了,那么就会降低命中率。


相关文章

域名解析教程

修改 CNAME 记录登入域名的 DNS 服务商网站,修改 CNAME 记录,具体配置方法可参见如下链接:DNSPod 域名解析方法新网 域名解析方法阿里云 域名解析方法西部数码 域名解析 方法...

CDN搜索引擎解析优化

CDN搜索引擎解析优化

CDN搜索引擎解析优化每个域名商解析都不同 我以阿里云举例 大部分都是差不多的在你的域名解析商内添加你需要的主机记录 线路选择你需要的搜索引擎 记录值填写你的源站地址可以防止IP更换掉重权收录等切记要...

宝塔源站获取用户真实IP方法

宝塔源站获取用户真实IP方法

以宝塔举例1.点击Nginx2.选择配置修改宝塔面板,套CDN后,获取用户真实IP3.在上图位置填入以下代码set_real_ip_from 0.0.0.0/0; real_ip_head...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。