在使用CDN时,CDN的缓存命中率很低。在浏览器中,按 F12 键,在访问页面中,单击 Network,然后在 Name 选项中,单击 Headers,在 Response Headers 模块中,确认URL响应头信息中 X-Cache 为 MISS,则表示没有命中CDN缓存。但是在页面中,对应文件的URL响应头信息的X-Cache为HIT。
注:本案例以Chrome浏览器为例。
问题原因 没有开启CDN的过滤参数功能。
解决方案 以下是关于CDN缓存命中率的说明以及CDN命中率低的相关解决方案。
CDN命中率说明 CDN命中表示可以直接通过缓存获取到需要的数据。 CDN没有命中表示无法直接通过缓存获取需要的数据,需要再次查询数据库或者执行其它的操作。一般情况下,可能是由于缓存中根本不存在所需数据,或者缓存已经过期。
开启过滤参数功能 可能由于没有开启CDN的过滤参数功能,导致URL中传递参数为变量。以如下URL为例,其对应的文件为ArrowScene.ccbi,但是每一次打开该文件时,URL中“?_t=”字段后的数字为变量,所以CDN并不会缓存该数据。 http://xxxxxx.com/movie/XSHD/res/ccb/ArrowScene.ccbi?_t=xxxxxxxxxxxxxx 登录CDN控制台,开启过滤参数功能。关于如何开启过滤参数功能,请参考过滤参数。 注:开启该功能后,“?_t=”字段后的参数将被忽略。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。