You need to enable JavaScript to run this app.
导航
回源重试逻辑
最近更新时间:2025.01.08 11:51:16首次发布时间:2025.01.08 11:51:16

当回源请求失败时,CDN加速服务会尝试其他源站,也就是 "回源重试"。

说明

回源请求失败的常见原因如下:

  • TCP 连接超时。

  • 其他原因导致的 TCP 连接失败。

  • 源站响应状态码是 5xx。

  • HTTP 请求超时。

默认情况下,TCP 连接超时时间是 2 秒,HTTP 请求超时时间是 60 秒。如果您要修改这些超时时间的设置,参考 配置超时时间的设置

回源重试发生时,CDN加速服务的源站选择流程

  1. 判断无法访问的源站的类型。

    • 如果该源站一个 IP 地址,CDN加速服务判定无法从源站获取请求的文件。
    • 如果该源站是一个域名,则判断该域名是否可以被解析为多个 IP 地址。
      • 如果该域名可以被解析为多个 IP 地址,CDN加速服务会尝试另一个 IP 地址。如果回源请求依然失败,CDN加速服务判定无法从源站获取请求的文件。
      • 如果该域名只能被被解析为一个 IP 地址,CDN加速服务判定无法从源站获取请求的文件。
  2. 尝试另一个主源站,步骤如下:

    1. 根据源站权重选择另一个主源站(权重值大的优先选择)。如果没有可供选择的主源站,继续步骤 3。

      说明

      如果无法访问的源站是域名并且该域名可以被解析为多个 IP 地址,CDN加速服务会选择另一个 IP 地址。

    2. 判断选中的主源站是否被标记为不可用。

      说明

      如果连续 10 次无法与一个源站建立 TCP 连接,CDN加速服务会将该源站标记为不可用。

      • 如果选中的主源站被标记为不可用,CDN加速服务放弃尝试该源站,然后重复步骤 2。同时,CDN加速服务会对该源站进行异步探测。

        说明

        如果异步探测的结果是 TCP 连接成功,CDN加速服务会从该源站移除不可用标记。

      • 如果选中的主源站没有该标记,则继续步骤 2.c。

    3. 向选中的主源站发送回源请求。

    4. 判断回源请求是否成功。

      • 如果回源请求失败,继续步骤 3。
  3. 尝试一个备源站,步骤如下:

    1. 根据源站权重选择一个备源站(权重值大的优先选择)。如果没有可供选择的备源站,CDN加速服务判定无法从源站获取请求的文件。

    2. 判断选中的备源站是否被标记为不可用。

      • 如果选中的备源站被标记为不可用,则重复步骤 3。同时,CDN加速服务会对该源站进行异步探测。

      • 如果选中的备源站没有该标记,则继续步骤 3.c。

    3. 向选中的备源站发送回源请求。

    4. 判断回源请求是否成功。

      • 如果回源请求失败,CDN加速服务判定无法从源站获取请求的文件。