文档简介:
简述自定义缓存Key的适用场景及配置方法。
功能介绍
缓存key是一个文件在CDN节点上缓存时唯一的身份ID,每个在CDN节点上缓存的文件都会对应一个缓存key。通常默认情况下,文件的缓存key为客户端请求的原始URL(带参数)。
通过自定义缓存key,可以将原始URL形式不同但实际指向同一个文件的请求,缓存为同一份,从而提升缓存命中率,降低回源量。
适用场景
如果客户端请求不同URL时,实际指向同一份缓存文件,则可以通过自定义缓存key功能来实现将其在CDN节点上映射为同一份文件,避免出现被缓存成不同文件而导致回源率高的问题。
例如:部分客户会在请求URL中设置防盗链串,可能在请求参数中,也可能在URL某一级目录中,假设请求1为:http://www.test.com/xxxxx/test/a.mp4;请求2为:http://www.test.com/yyyyy/test/a.mp4;由于请求URL不同,CDN节点默认会视为请求不同文件而缓存成多不同mp4文件,但实际其一级目录均为防盗链串,二者为同一文件内容。此时可设置缓存key为:http://www.test.com/test/a.mp4,即对缓存uri部分做自定义设置,从而达到共用同一份缓存目的。
注意事项
1、CDN控制台上“域名管理”-“缓存配置”中默认开启去问号缓存,开启后,如果客户的请求URL中含有多个参数值,例如请求1为:http://www.test.com/a.mp4?a=1,请求2为:http://www.test.com/a.mp4?a=2;则将这两个请求的缓存key统一为:http://www.test.com/a.mp4,以达到共用同一份缓存文件,降低回源率的效果。如您期望的自定义缓存key通过去问号缓存即可成功设置,则您可在CDN加速控制台上自助开启,无需额外提工单开启“自定义缓存key”功能。
2、自定义缓存key与CDN加速控制台上“域名管理”-“缓存配置”中去问号缓存同时开启情况下,自定义缓存key优先级更高。
3、自定义缓存key一旦设置后,一般不建议轻易变动;如果您配置自定义缓存key生效后又再次变更,会导致原有的缓存失效,产生大量回源。
配置说明
该功能暂不支持客户自助配置,如需使用,请通过提交工单给天翼云客服,由其人工操作开启。提交工单时,请附带如下信息:
1、缓存协议:http or https,默认缓存协议为http,即无论用户请求http还是https协议,均按照http协议来缓存。
2、缓存host:默认为加速域名;如存在加速域名A需与其他加速域名如域名B共用缓存的场景,需要将缓存host设置为域名B。
3、缓存uri:默认为请求uri(即域名后不包括?后参数的部分);如需对请求uri中的目录或文件名做特殊处理后作为缓存key,需明确说明具体的处理方式,例如将去掉请求uri中一级目录后的uri作为缓存uri。
4、缓存参数:CDN控制台“域名管理”-“缓存配置”中默认开启去问号缓存,如要关闭,请参考:缓存过期时间设置;如需保留参数缓存,或保留特定参数缓存、去掉特定参数缓存,请特殊说明。