回源

最近更新时间:2021-04-19 16:37:00

查看PDF

KS3的回源规则允许请求者向存储空间(Bucket)请求不存在的文件时,从回源规则设置的源站获取目标文件。回源规则分为镜像回源和重定向回源两种,可以满足您对于数据热迁移、特定请求的重定向等需求。

1. 镜像回源

当客户端通过GetObject请求Bucket中的某个文件不存在时,KS3会向回源地址请求这个文件。获取到该文件后,KS3会将文件存入目标Bucket,并返回给用户。具体流程如下图所示。

红色镜像回源.png

  • 使用场景
    镜像回源主要用于数据无缝迁移到KS3的场景。例如某服务已经在自己建立的源站或者在其他云产品上运行。现因业务发展,需要将数据迁移到KS3上,但是又不能停止服务,此时可以在迁移数据的同时,使用镜像回源功能保证业务的正常进行。

  • 细节分析

    • 同步回源规则触发条件
      当客户端Get Object请求的文件不存在时,且用户配置了该文件的同步镜像回源规则,并且该文件满足规则时,触发同步镜像回源。

    • 请求失败返回规则
      如果镜像源也不存在此文件,即镜像源返回给KS3的HTTP状态码为404,那么KS3也将返回404给用户。如果镜像源返回给KS3的HTTP status为其他非200的状态码(包括因为网络原因等获取不到文件的错误情况),KS3将返回424给用户,错误码为MirrorFailed。如果源站返回3xx(3XX包含302与301),根据用户的回源规则配置,决定是否follow源站3xx重定向请求获取到资源。

    • 同步回源文件更新规则
      如果文件通过镜像回源,存储到了KS3中,之后源站里该文件发生了变化,KS3不会更新已存在于KS3上的该文件。

    • 同步回源文件元信息:

    Content-Type
    Content-Disposition 
    Cache-Control 
    Expires
    
    

2. 重定向回源,即原镜像

重定向功能的作用是根据设置的回源条件,以及相应的跳转的配置,向用户返回一个3xx跳转。具体流程如下图所示。
红色重定向.png

  • 使用场景:
    • 其他数据源KS3的无缝迁移
      用户异步的从自己的数据源向KS3迁移数据,在此过程中未迁移到KS3的数据通过URL rewrite的方式返回给用户一个302重定向请求,用户的客户端根据302中的Location从自己的数据源读回数据。
    • 配置页面跳转功能
      例如用户希望隐藏自己的某些前缀开头的Object,给访问者返回一个特殊的页面。
    • 配置发生404错误时的跳转页面
      发生以上错误的时候用户可以看到一个预先设定的页面,不至于系统发生错误的时候向用户完全暴露KS3的错误。

文档内容是否对您有帮助?

根本没帮助
文档较差
文档一般
文档不错
文档很好

在文档使用中是否遇到以下问题

  • 内容不全,不深入
  • 内容更新不及时
  • 描述不清晰,比较混乱
  • 系统或功能太复杂,缺乏足够的引导
  • 内容冗长

更多建议

0/200

评价建议不能为空

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

问题反馈