孙伟:腾讯云高级技术工程师,主要负责腾讯云存储和中间件产品的技术支持专项工作。有8年以上的云存储技术支持、数据迁移和架构方案经验。曾任职于其他云友商公司,担任过研发、产品改进、售后等多项工作岗位。
01
—
同步方案一览
02
—
各同步方案对比
2.1 方案1:跨区域同步能力
针对于强数据一致性的同步场景,跨区域复制功能可以很方便的通过控制台配置来实现数据的跨园区同步。
此方法优点:配置简单,控制台可视化。
此方法缺点:数据强一致性,仅适合对象同步,不含逻辑处理的场景。
2.2 方案2:工具周期同步能力
针对于实时性要求较高的同步场景,使用migration工具可以实现自定义时间同步策略。
此方法优点:可配置的轮询时间周期,同步内容与日志直观可见。
此方法缺点:依赖于CVM/客户端资源,受限于中转主机带宽资源,配置较复杂。
2.3 方案3:回源拉取同步能力
针对于热数据同步的场景,部分数据同步,降低存储成本。
此方法优点:配置简单,仅热数据被同步,节省存储空间。
此方法缺点:第一次访问会被302重定向源站,源站带宽有开销,只能被动同步,不能主动全量同步。
2.4 方案4:SCF事件触发同步能力
适用于大规模且实时性较高的数据同步,以及业务逻辑较为复杂的同步场景,比较值得推荐的方法。
此方法优点:利用SCF来实现高性能的数据同步操作,通过SCF来部署代码,具备完善的监控和日志体系,可实现较为复杂的业务同步逻辑。
此方法缺点:需要一定的编码能力,需要对VPC、SCF、COS等多种产品非常了解,配置较为复杂。
03
—
高可用数据同步方案
通过数据同步方案4的架构,结合COS自身特点与相关产品的功能,我们可以绘制出一个具备数据高可靠 + 高可用 + 容灾能力 + 故障切换能力的整体架构图:
数据高可靠:通过上传至Master桶后,可实现实时跨区域数据同步,确保数据主从分离,天然支持业务层多副本冗余,提升数据可靠性。
服务高可用:通过多桶串联同步+CDN多源站机制+COS回源拉取,提升服务的连续性与健壮性。
容灾能力:跨园区的多中心/多云策略,可最大限度避免大规模线路故障或服务提供商带来的影响。
故障切换能力:丰富的多节点入口,可提供灵活的数据源切换,提升灾备切换能力。
04
—
各方案测试对比
准备1个51MB文件,上传后查看同步效果。
跨区域复制,同步所用的时间为0秒。
Migration工具轮询间隔设置为1秒等待,同步所用的时间为22秒。
同步所用的时间为4秒。
SCF事件触发同步
同步所用的时间为10秒。
05
—
结论
从测试结果看出,单从时间同步效率从高到低为:
跨地域同步->回源同步->SCF事件同步->Mig工具同步;
这几种方式满足不同需求场景,同步的性能也略有不同: