【最佳实践】巡检项:内容分发网络(CDN)缓存命中率

2022-04-13 15:38:30 浏览数 (1)

问题描述

缓存命中率指的是流量命中率,可通过控制台实时监控指标查看,反映的是命中缓存的流量与整体流量的比率。对于静态文件加速来说,如果缓存命中率偏低,一方面会造成源站压力及成本较大,另一方面也会影响访问质量。我们可以通过一些合理的设置优化缓存命中率。

解决方案

1. 合理使用缓存键设置,对于URL中携带参数的情况,实际参数变化或者部分参数变化对于文件本身没有任何修改时,建议设置忽略全部参数或者保留部分参数配置。具体操作指引参考<缓存键配置规则>

2. 设置合理的缓存时间,CDN支持4种方式的缓存时间配置:遵循源站、缓存、强制缓存、不缓存。 在此建议,针对静态文件,在确认每次更新都会修改文件名或者版号或文件路径的情况,建议设置强制缓存模式,防止源站返回一些非预期的header,导致cdn缓存失效。具体的缓存设置规则参考<节点缓存配置>

3. 开启分片回源,针对静态大文件,一般是2M左右及以上,都可以开启。尤其是针对较大文件,比如100M以上,在源站支持range请求的情况下,建议开启。

4. 保障正确的源站返回头。在开启分片情况下,务必保障每个分片返回时,Last-Modified值一致,否则会导致文件下载失败及无法缓存。此外,若是源站返回的 Cache-Control 字段为 no-cache/no-store/private,则CDN不会缓存。 另外,在遵循源站模式情况下,需要缓存的文件其Cache-Control 字段的max-age值务必要给出,不要太小,以免影响缓存时间。

注意事项

缓存时间及缓存KEY的设置,务必谨慎,设置错误可能会引起业务异常,提前灰度验证。

0 人点赞