配置指南

API 文档

填写文档满意度调查问卷,赢取缤纷好礼> HOT

缓存键规则配置

最近更新时间:2022-08-10 14:39:33

配置场景

腾讯云 CDN 在进行缓存时使用的是 Key-Value 格式进行资源映射,其中的 Key 即缓存键,Value即资源在CDN中的缓存。您可通过缓存键规则配置,只保留对资源内容有影响的参数作为缓存键,将同一个资源的一类请求转化为统一的缓存键并命中同一份缓存,以提升命中率。

忽略参数

若在您的业务场景下,资源 URL 路径中问号后的参数对资源内容有影响,需要保留作为缓存键;反之,若参数对资源内容没有影响,则参数需不作为缓存键。

不忽略参数的场景:

  • 用户通过 URL 进行资源访问时,可能会携带一些具有特殊作用的参数,如使用以下链接来表示两张不同的图片:
    http://cloud.tencent.com/1.jpg?version=1
    http://cloud.tencent.com/1.jpg?version=2
    这种场景下需要选择“不忽略”,保留URL所有参数及值作为缓存键,分别进行图片内容的缓存,来进行资源区分。

保留指定参数或忽略指定参数的场景:

  • 若 URL 中除了对资源内有影响的 version 参数以外,还携带其他不影响图片内容的参数,如时间戳 time 来记录请求时间:
    http://cloud.tencent.com/1.jpg?version=1&time=1651752741
    http://cloud.tencent.com/1.jpg?version=1&time=1651752742
    http://cloud.tencent.com/1.jpg?version=2&time=1651752743
    这种场景下可选择"保留指定参数"或"忽略指定参数" ,指定保留对图片内容有影响的 version 参数作为缓存键,或指定忽略不影响图片内容的 time 参数,两种方式都可以实现下述缓存结果:
  • 对于参数 version 值相同的请求,忽略参数 time 及值,将共用一份缓存;
  • 对于参数 version 值不同的请求,忽略参数 time 及值,将区分缓存。

参数全部忽略的场景:

  • 在音视频场景下,若使用时间戳签名参数来进行访问认证:
    http://cloud.tencent.com/1.mp4?sign=XXXXXX
    这种场景下需要选择“全部忽略”,由“?”之前的链接 http://cloud.tencent.com/1.mp4 作为缓存键。节点仅缓存一份资源,即使时间戳签名不断变化,通过签名校验后可直接命中缓存。

忽略大小写

若在您的业务场景下,资源 URL 路径中大小写差异与资源内容无关,则可开启忽略大小写配置,提升命中率。

注意:

平台升级中,暂不支持开启忽略大小写。

配置指南

查看配置

登录 CDN 控制台,在左侧菜单栏选择域名管理,单击域名操作列的管理,进入域名配置页面,切换 Tab 至缓存配置,即可找到缓存键规则配置

添加加速域名时,根据不同的业务类型,忽略参数默认关闭或开启:

  • 若加速域名选择网页小文件业务类型,默认不开启忽略参数。缓存键规则配置中,全部文件规则的忽略参数同步为“不忽略”。
  • 若加速域名选择下载大文件、音视频点播业务类型,默认开启忽略参数。缓存键规则配置中,全部文件规则的忽略参数同步为“全部忽略”。

新增规则

您可按需添加缓存键规则。

配置约束

  • 单个域名至多可添加20条缓存键规则(包含默认规则)。
  • 多条规则支持调整优先级:底部优先级大于顶部(默认规则不可调整优先级)。
  • 单条文件类型/文件夹/全路径文件规则中,至多可输入100组内容,不同内容之间用“;”分隔。例如:文件类型 - jpg;png。
  • 选择保留指定参数忽略指定参数,指定参数的约束如下:
    • 全部文件:至多可填6个参数名,每个参数名不可超过20个字符。
    • 文件类型/文件夹/全路径文件:至多可填5个参数名,每个参数名不可超过20个字符。
      多个参数名之间用“;”分隔,例如:key1;key2;key3。

修改规则

对已添加的缓存键规则,可进行修改。单击缓存键规则操作列的修改即可。

注意:

默认规则仅支持修改忽略参数和忽略大小写配置,不支持修改类型和内容。

删除规则

可删除已添加的缓存键规则。单击缓存键规则操作列的删除即可。(默认规则不可删除)

配置示例

若加速域名www.test.com缓存键规则配置如下:

则实际访问情况如下:

客户端请求资源www.test.com/abc.jpg?version=1&colour=redwww.test.com/abc.JPG?version=1&colour=red,假设请求均访问到 CDN 节点 X,节点 X 无上述两个资源的缓存:

  • 请求回源站获取abc.jpg图片资源,并缓存在 CDN 节点 X 上,因已开启忽略参数:全部忽略,则由“?”之前的链接www.test.com/abc.jpg作为缓存键。
  • 当客户端请求www.test.com/abc.JPG?version=1&colour=red时,因忽略大小写未开启,则无法命中之前缓存的www.test.com/abc.jpg资源,请求回源站获取abc.JPG图片资源,并缓存在 CDN 节点 X 上,其对应的缓存键为www.test.com/abc.JPG?version=1&colour=red
目录