写点什么

华为云 OBS+CDN 的最佳成本实践,都在这里了(续)

  • 2020-03-24
  • 本文字数:1192 字

    阅读完需:约 4 分钟

华为云OBS+CDN的最佳成本实践,都在这里了(续)

多云存储数据同步方案

在昨天的文章(延伸阅读:华为云 OBS+CDN 的最佳成本实践,都在这里了)中我们提到,为了避免单厂商故障、提高整体业务连续性,企业可以采用多云对象存储+多云 CDN 架构。这种多云配置模型下,就必须考虑如何实现不同厂商云存储之间的数据同步。下面我们继续介绍实践,提供几个方案供大家参考。


应用双写


如果数据是在应用服务侧产生,或者数据在客户端产生但通过服务端写入对象存储,建议使用双写方案,架构如下:



此时业务应用可对接两家对象存储的 SDK,将文件以同步模式或者异步模式写入两家对象存储。对象存储的上行流量免费,所以该架构不会增加额外的流量成本。


数据回源


如果业务已在使用其他云对象存储,并且引入新云厂商的对象存储和 CDN,且不想改变原有上传逻辑,建议可使用“数据回源”功能。


例如:原来客户使用的是其他云厂商的对象存储,现在新引入华为云的 OBS+CDN 服务。当 OBS 刚接入系统时,客户端的文件访问请求首先会到达华为云的 OBS,而 OBS 桶里没有该文件时,通过“数据回源”将客户端请求重定向到设定的原有对象存储源站,并且把数据传递给客户端(路径 1)。与此同时,华为云 OBS 会异步地从其他云源站将数据拉取到 OBS 桶存储下来(路径 2)。架构如下:



当下次客户端请求同样的文件时,华为云 CDN 将直接回源到 OBS 获取数据,不会出现获取不到的情况。


需要说明的是,“数据回源”功能是被动触发式,即只有向 OBS 发起请求后 OBS 才会到设置的源站将数据拉取过来。而当一个新文件上传到其他云的对象存储后,建议业务应用程序向华为云 OBS 触发一个 GET 请求来拉取数据(发起 GET 请求后可关闭连接,无需接收实体数据)。


Serverless 触发式上传


如果客户原来使用云厂商支持 Serverless,则可以通过 Serverless 异步把新增数据同步到华为云 OBS。该方案同样不改变原有的上传逻辑,当文件上传到其他云对象存储后,触发函数计算服务,通过 Serverless 方式将文件同步到华为云 OBS,架构如下:



该方案需要客户在其他云启用函数计算服务并部署上传文件到 OBS 的代码,会产生函数计算服务的费用。另外,一般函数计算的运行时间有一定限制,该方法不适合大文件上传的场景。


异步抓取


在单个文件不大的情况下(小于 5GB),还可以使用异步抓取方式,把上传到其他云对象存储的数据同步到华为云 OBS。方式为调用 OBS 的异步抓取 API,由 OBS 的异步抓取组件将文件拉取到 OBS 桶保存。



该方法需要客户在业务代码里增加调用 OBS 异步抓取功能的代码。


除了以上 4 种方法外,还有一种客户需要把其他云厂商的对象存储中大量的存量数据(从 TB 级到 EB 级)批量迁移到 OBS 的场景,针对这种情况,华为云提供了 OMS 对象存储迁移服务,由华为云专业的迁移服务团队来帮助客户完成整个迁移活动,有需要的同学可以上华为云官网进行了解。


本文转载自 华为云产品与解决方案 公众号。


原文链接:https://mp.weixin.qq.com/s/BbQFROBc4oyxSy8Rvcza0A


2020-03-24 21:051952

评论

发布
暂无评论
发现更多内容

自学前端技术怎么样,有必要去吗

小谷哥

深究并行编程Parallel类中的三大方法 (For、ForEach、Invoke)和几大编程模型(SPM、APM、EAP、TAP)

C++后台开发

多线程 后端开发 linux开发 C++开发 并行编程

PolarDB-X 开源分布式数据库进阶营免费报名中!

阿里云数据库开源

MySQL 数据库 阿里云 开源 PolarDB-X

软件测试 | 测试开发 | 校招面试真题 | 实习生和应届生有什么区别?

测吧(北京)科技有限公司

软件测试 软件测试工程师

Wallys/ WiFi6 MiniPCIe Module 2T2R 2×2.4GHz 2x5GHz MT7915 MT7975 /industrial mini pcie card

wallysSK

MT7915

终于有人把这份10 万字节详细面试笔记(带完整目录) 整理出来了

钟奕礼

Java java程序员 java面试 java编程 Java 面试题

Meta Force 原力元宇宙公排系统开发详情

开发微hkkf5566

【LeetCode】统计匹配检索规则的物品数量Java题解

Albert

算法 LeetCode 11月月更

灵雀云ACP 斩获“2022金边奖-最佳云原生边缘云平台”

York

容器 云原生 5G 边缘计算 边缘云

前端培训班中如何学习前端开发技术

小谷哥

首批招募 50 家!「龙腾社区生态发展计划」正式发布

OpenAnolis小助手

开源 操作系统 云栖大会 龙蜥社区 合作

RocketMQ 重试机制详解及最佳实践

阿里巴巴云原生

阿里云 RocketMQ 云原生

【web 开发基础】PHP 自定义函数之函数的返回值-PHP 快速入门 (27)

迷彩

web开发基础 PHP基础 11月月更 return

大数据培训学习需要什么基础

小谷哥

消息队列 RocketMQ 5.0:从消息服务到云原生事件流平台

阿里巴巴云原生

阿里云 RocketMQ 云原生

低门槛上手快!火山引擎VeDI这样满足数据分析新需求

字节跳动数据平台

大数据 BI

声网深度学习时序编码器的资源预测实践丨Dev for Dev 专栏

声网

深度学习 算法 模型

AOP 的九点核心概念和作用

千锋IT教育

离职、被毕业?职场打工人的最强生存指南!

千锋IT教育

PCB设计必须考虑的8种安全距离,搞错1种都出大问题!

华秋PCB

PCB PCB设计

腾讯T4带你玩转Spring全家桶

钟奕礼

Java java程序员 java面试 java编程

极客时间架构训练营模块六作业

李晨

架构

微服务中的服务发现是什么?

API7.ai 技术团队

微服务 服务发现 API网关 APISIX

MetaForce佛萨奇2.0系统开发DAPP搭建

薇電13242772558

dapp开发

大数据培训和自学哪种方式更好

小谷哥

5种GaussDB ETCD服务异常实例分析处理

华为云开发者联盟

数据库 后端 华为云

成为千行百业数字化转型催化剂的,竟然是它!

元年技术洞察

微服务 低代码 数字化转型

使用 Fiori Elements 框架创建 UI5 Web 应用

汪子熙

web开发 Fiori SAP UI5 ui5 11月月更

Python图像处理丨5种图像处理特效

华为云开发者联盟

Python 人工智能 华为云 图像处理

Dive into TensorFlow系列(3)- 揭开Tensor的神秘面纱

京东科技开发者

Python 人工智能 深度学习 tensorflow

Spring 5(五)事务操作

浅辄

Spring5 事务 11月月更

华为云OBS+CDN的最佳成本实践,都在这里了(续)_云原生_华为云产品与解决方案_InfoQ精选文章