Range分片

Range分片,指边缘安全加速 ESA节点在回源的HTTP请求里面携带了Range信息,源站在收到回源请求时,根据HTTP请求头中的Range信息返回指定范围的内容数据给ESA节点。Range分片可有效提高文件分发效率,提高缓存命中率,减少回源流量消耗和源站压力,并且提升资源响应速度。

工作原理

RangeHTTP请求头之一,可用来指定需获取的内容的范围。例如,Range: bytes=0-100表示回源请求该文件的前101个字节的数据内容。

开启Range分片功能后,ESA收到用户的请求时,如果ESA节点上未缓存该资源或资源已过期,ESA节点回源会采用Range请求,从源站分段获取用户需要的部分资源并缓存到ESA节点上。

开启Range分片的工作原理如下图所示:

image

前提条件

开启Range分片前需确认源站是否支持Range请求,即HTTP请求头中包含Range字段,并且源站能够响应正确的206状态码。如果源站不支持Range请求,开启Range分片将导致资源无法缓存。

注意事项

如果客户端访问的内容为动态资源(即资源的文件后缀不在ESA节点的默认缓存文件列表中,并且ESA上也没有明确设置针对该资源的缓存策略ESA节点的响应信息里面,缓存状态为DYNAMIC),动态资源在回源的时候不会做Range分片处理。

分片大小设置可能会影响到资源的总体命中率,以及未缓存资源的回源下载速率,因此请根据实际场景来合理设置。具体可以参考以下两个场景:

  • ESA节点到源站之间的回源网络性能较好(网络延迟低)的情况下,推荐使用较小的Range分片大小,这样能够确保有较高的回源下载速率,并且还能够提高缓存命中率。

  • ESA节点到源站之间的回源网络性能一般(例如:跨境回源或者跨大洲长距离回源,网络延迟高)的情况下,推荐使用较大的Range分片大小,这样虽然无法实现最优的缓存命中率,但是能够确保有较高的回源下载速率。

  • 开启Range分片功能以后,导致回源的QPS升高,如果源站有设置频次控制功能,需要注意避免触发源站的限流;规避办法是开启ESA源站防护功能,并且将ESA回源节点的IP加入源站的访问IP白名单。

操作步骤

  1. ESA控制台,选择站点管理,在站点列单击目标站点。

  2. 在左侧导航栏,选择规则 > 回源规则

  3. 单击新增规则,填写规则名称

  4. 如果请求匹配以下规则...区域设置要匹配的用户请求特征,具体配置规则请参见规则表达式的组成

  5. Range分片区域,单击配置选择跟随客户端Range请求(默认配置)不使用Range回源开启Range回源(大文件场景推荐配置)

    当选择跟随客户端Range请求或者开启Range回源时,可以设置分片大小。分片大小512 KB、1 MB、2 MB、4 MB,其中512 KB为默认设置。

    参数名称

    选项

    描述

    示例

    回源模式

    跟随客户端Range请求(默认配置)

    默认为跟随客户端Range请求(默认配置)状态,当客户端使用Range请求ESA节点时,ESA节点才会采用Range请求回源。ESA节点第一次回源请求会按照用户请求中Range的大小向上取整,然后请求用户源站(此处的向上取整为分片大小的整数倍)后续的回源请求将会按照在“分片大小”参数中设置的分片大小来请求用户源站。

    例如,当分片大小为512 KB时,客户端向ESA节点发起的请求中含有Range:bytes=0-614399(即600 KB),ESA节点第一次回源请求会按照1024 KB回源(600 KB向上取整为1024 KB),后面全部按照512 KB的分片大小回用户源站。

    不使用Range回源

    开启不使用Range回源后,无论客户端是否使用Range请求ESA节点,ESA节点回源时都会请求整个文件,在大文件场景下的文件分发效率较低。

    例如,客户端向ESA节点发起的请求中含有Range:bytes=0-100,则ESA节点向源站发起的请求中不会携带Range参数。源站会响应ESA节点完整文件(假设完整文件大小为10 MB,源站就会响应10 MB的文件给ESA节点),ESA节点收到源站响应的文件后,会将文件缓存下来,同时响应客户端range:0-100的内容。

    开启Range回源(大文件场景推荐配置)

    开启Range回源(大文件场景推荐配置)后,无论客户端是否使用Range请求ESA节点,ESA节点都会采用Range请求回源。ESA节点的所有回源Range请求都按照在“分片大小”参数中设置的分片大小来请求用户源站。

    分片大小

    • 512 KB

    • 1 MB

    • 2 MB

    • 4 MB

    回源模式为跟随客户端Range请求开启Range回源的情况下可以设置Range分片大小,默认按512 KB生效。

    1 MB

  6. 点击确定

相关文档

规则相关的功能,在生效优先级、可重入性、生效颗粒度这三个特性上存在差异,详细情况请查看规则相关功能的特性说明