You need to enable JavaScript to run this app.
导航

回源重试逻辑

最近更新时间2024.05.14 16:06:00

首次发布时间2022.02.09 11:16:49

当回源请求失败时,内容分发网络会尝试其他源站,也就是 "回源重试"。

说明

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

  • TCP 连接超时。

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

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

  • HTTP 请求超时。

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

回源重试发生时,内容分发网络的源站选择流程

alt

文字说明

  1. 尝试主源站列表中的另一个源站,步骤如下:

    1. 从主源站列表中,根据源站权重选择另一个主源站。如果没有可供选择的主源站,继续步骤 2。

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

      说明

      如果连续 10 次无法与一个源站建立 TCP 连接,内容分发网络会将该源站标记为不可用。

      • 如果选中的主源站被标记为不可用,内容分发网络放弃尝试该源站,然后重复步骤 1.a。同时,内容分发网络会对该源站进行异步探测。

        说明

        如果异步探测的结果是 TCP 连接成功,内容分发网络会从该源站移除不可用标记。

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

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

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

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

    1. 从备源站列表中,根据源站权重选择一个备源站。如果没有可供选择的备源站,内容分发网络判定无法从源站获取请求的文件。

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

      • 如果选中的备源站被标记为不可用,则重复步骤 2.a。同时,内容分发网络会对该源站进行异步探测。

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

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

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

      • 如果回源请求失败,内容分发网络判定无法从源站获取请求的文件。