文档简介:
简述Range回源的适用场景和配置方法。
功能介绍
Range回源,是指CDN节点收到用户请求后,会在回源时携带Range请求头,源站在收到Range请求后,会返回对应范围的内容数据给CDN。Range回源功能开启后,CDN节点可以以分片的形式缓存文件,对于Range请求而言,可以有效提高文件分发效率,降低首包时延,同时提高缓存利用率,减少不必要的回源。
开启和关闭Range回源功能时,相应的情况如下:
1、关闭Range回源
- 客户端发起range请求,CDN节点无缓存时,默认透传客户端range请求回源,无论源站响应206或200状态码,CDN均不做缓存并透传源站的状态码和内容给客户端。
- 客户端发起完整文件请求,CDN节点无缓存时,透传客户端请求回源,源站响应200状态码,CDN缓存文件并响应200状态码及内容给客户端。
2、开启Range回源
- 无论客户端发起的是否range请求,CDN节点无缓存时,均按配置的range分片大小回源,如源站响应206状态码,则CDN缓存对应分片内容并响应206(如客户端为range请求)或200(如客户端为完整文件请求)给客户端。
- 客户端发起range请求,CDN有range范围的文件内容缓存时,直接响应206状态码及对应范围缓存内容给客户端。
说明:Range回源功能默认关闭。
适用场景
客户端存在range请求,且源站支持range,可响应指定范围内的内容数据时,建议开启Range回源功能,以提高文件分发效率及缓存利用率。
一般源站内容存在视频、APP等大文件场景下,建议开启Range回源功能。
注意事项
1、开启Range回源前需确认源站是否支持Range请求,即源站能够响应对应范围内的206文件分片内容,同时需确认源站响应头中是否包含Transfer-Encoding: chunked头部。如果源站不支持Range请求,或源站可能响应Transfer-Encoding: chunked头部,可提交工单申请配置“完整文件回源”功能,该功能开启后,客户端发起range请求时,CDN节点将会回源获取完整文件,并缓存下来,同时响应range范围的数据。注意:如客户端请求的range范围位置靠后,开启“完整文件回源”功能后,客户端需要等待较长时间才能获取range内容,分发效率较低。
2、开启Range回源时,CDN会将用户请求(无论原始请求是否为range请求)拆分成若干个range请求回源,以一个100MB的文件为例,在Range回源开启时,CDN获取完整文件需要回源100次,一定程度上会增加回源访问请求数和并发量,请合理设置分片大小。默认Range分片大小为1MB,即:如果客户端请求Range: bytes=0-100,则在CDN节点回源时会将range请求扩大为1MB。
3、请在新增域名时明确是否开启Range回源,以及开启Range回源的具体分片大小;一旦域名CNAME至我司产生流量后,建议不要轻易变更Range回源功能开启状态以及分片大小,否则可能会产生较高回源;如确实有调整需求,请在提交工单时特殊说明。
配置说明
该功能暂不支持客户自助配置,如需使用,请通过提交工单给天翼云客服,由其人工操作开启。
提交工单时,请附带如下信息:
1、分片大小,默认为1MB;如需设置为其他值,请说明。
2、开启分片范围,默认为域名粒度;如需设置为仅部分文件,请说明具体的文件范围,例如xx目录,或xx文件后缀(如.mp4、.flv等)。