OPPO通过AWS节约大量成本提供海外服务
关于OPPO
OPPO最早被人熟知是在以MP3和MP4为代表的影音市场。转型进入手机市场后,OPPO获得了更大发展机遇,近几年更是成为发展速度最快的国产品牌之中的一个。早在2010年前就開始了海外市场的布局,现在OPPO产品和服务已覆盖中国、美国、俄罗斯、欧洲、东南亚(泰国、越南、印度、印尼等)等广大市场,现正致力于打造专业化的智能手机与移动互联网公司。
挑战
t在开发海外市场的过程中。OPPO面临内外两个挑战:对外,OPPO不仅向用户销售手机产品,更提供了完备的手机服务,包含:以手机寻回、数据同步备份为主的个人云服务和主题及应用的下载服务,这些业务与用户使用手机的体验息息相关,因此不仅须要server安全、稳定。更须要为用户提供较快的訪问速度;对内。伴随海外市场的业务添加,OPPO既须要在不同市场架设官方站点,也须要实现企业内部不同地区的办公协同。相同对server在不同地区的訪问速度和跨区域的同步调用提出较高要求。
为什么使用AWS
手机行业变化较快, OPPO须要尽快将配合手机使用的服务在海外部署完毕以便尽早推动兴许工作。经过综合考虑,OPPO发现使用AWS云服务所需的部署时间比自建海外数据中心更少,成本也更低。而且现有技术人员可以比較平滑的过度到使用AWS的云服务上。再加上AWS提供了很具体的开发文档和用于交流的开发社区,工作中遇到的问题都能得到解决,所以OPPO终于决定使用AWS的云服务进行海外市的拓展。具体来说,OPPO主要是基于下面几方面的考量:
海外业务安全、高速的部署
OPPO在海外市场不仅销售手机,还向消费者提供包括“找回手机”、“数据备份同步”在内的个人云服务,设立了包括应用商店和手机主题商店的下载中心。为了满足用户需求,OPPO设立了15 个Amazon Elastic Compute Cloud (Amazon EC2) 实例用于其个人云服务、下载中心、企业内部系统和海外官方server。Amazon EC2通过真正的虚拟计算环境,在云中提供了大小可调的计算容量。而且凭借AWS覆盖全球的基础设施,OPPO实现了服务和业务的跨地区部署。
为了保证数据安全,OPPO在 Amazon EC2 中使用了Elastic Block Store(Amazon EBS),EBS为EC2 实例的持久性数据提供了块级存储卷。每一个 Amazon EBS 卷在其可用区域内自己主动复制。以保护您免于组件故障的威胁,同一时候提供高可用性和持久性。这一特性加强了OPPO相关业务的安全性和稳定性,大大提升了海外用户使用OPPO服务的感受。OPPO还使用Amazon
 Simple Storage Service (Amazon S3) 存储备份和静态文件。当中包含:1TB 的用户个人数据和2TB的应用和主题数据。
更让OPPO感觉便捷的地方是,通过设置Amazon Elastic IP。身在中国的技术人员无需等待又一次配置或者替换主机。便能够通过编程方式又一次映射自己Elastic IP地址到一个替换的实例。高速处理实例或软件问题。真正实现了出现故障的“零反应时间”。极大提升了海外业务的部署效率。
便捷的数据库功能调用
不论是个人云服务、下载中心。还是OPPO的内部系统和海外官网server。都须要通过对云服务调用数据库功能。OPPO使用了Amazon Relational Database Service(Amazon RDS)服务,仅需设置简单的 API 调用或通过 AWS 管理控制台就能完毕原本复杂的操作步骤。如:数据库的复制和扩展。并且得益于OPPO原本就在使用Linux和Oracle管理自己的数据库系统。技术人员在部署各个应用时。能够直接使用AWS托管的企业级解决方式,直接从Amazon
 EC2上的Oracle系统中启动企业软件堆栈,这使OPPO仅仅需 10秒的停机时间就能够将其整个数据库迁移到 Amazon RDS。此外,OPPO还是使用了Amazon CloudFront服务,用于应用商店和主题商店的内容分发。在全球范围内实现了低延迟、快速度的内容传输,泰国、越南等东南亚用户下载OPPO应用的响应时间与在中国用户相差的时间基本相差不大。
收益
OPPO使用的Amazon EC2/ S3/ EBS等服务都是依照实际的使用量进行收费,Amazon CloudFront服务已经与Amazon的S3及EC2服务实现了集成,为OPPO节省了大量成本。
依据OPPO的估算。AWS帮助其降低了约33%的运营成本。
下一阶段,OPPO已经在考虑使用Amazon Reserved Instance以节省费用。
很多其它信息
欲了解很多其它AWS企业级解决方式,请參考AWS的页面:http://aws.amazon.com/cn/enterprise-it/
OPPO通过AWS节约大量成本提供海外服务的更多相关文章
- DeNA/上海纵游通过使用AWS大量缩短新款游戏和服务的上线时间
		
关于DeNA/上海纵游 DeNA 创立于1999年,是世界率先的网络服务公司,业务涵盖社交游戏.电子商务等领域.DeNA总部设于东京,现已于京证券交易所上市(交易代码:2432),在中国.美国.新加坡 ...
 - Windows Azure HandBook (2) Azure China提供的服务
		
<Windows Azure Platform 系列文章目录> 对于传统的自建数据中心,从底层的Network,Storage,Servers,Virtualization,中间层的OS, ...
 - 第13章 使用Bind提供域名解析服务
		
章节简述: 本章节将让您理解DNS服务程序的原理,学习正向解析与反向解析实验,掌握DNS主服务器.从服务器.缓存服务器的部署方法. 够熟练配置区域信息文件与区域数据文件,以及通过使用分离解析技术让不同 ...
 - 如何使用AWS和Azure的配置存储服务保存读取配置
		
原文:Want to yank configuration values from your .NET Core apps? 作者:pauljwheeler 译文:https://www.cnblog ...
 - 提供RESTful服务
		
RESTful广泛运用于互联网服务,而在企业应用中,大部分场景仍然是RPC服务,这是由于企业应用的业务复杂性造成的.但是基于SOAP的RPC服务也存在很多的弊端,比如服务异步处理比较麻烦,大部分RPC ...
 - 服务器 tfs不提供 TeamFoundation服务。基础连接已经关闭
		
服务器 tfs(服务器名或url)不提供 TeamFoundation服务.基础连接已经关闭,发送时发生错误.TFS突然间连接不上到,到服务器上配置团队项目的组成员资格提示这样的错误,客户端连接的时候 ...
 - 搭建自己的XenServer+CloudStack云平台,提供IaaS服务(一)环境搭建
		
目标 搭建一个完整的基于XenServer和CloudStack的虚拟化平台,提供IaaS服务. 搭建三台安装了XenServer的服务器 搭建一台安装了CloudStack的服务器用以管理云平台 搭 ...
 - Android该系统提供的服务--Vibrator(振子)
		
Android该系统提供的服务--Vibrator(振子) --转载请注明出处:coder-pig Vibrator简单介绍与相关方法: watermark/2/text/aHR0cDovL2Jsb2 ...
 - poptest分享计划以及提供的服务
		
poptest分享计划以及提供的服务 POPTEST致力于测试开发工程师的培养,能让学员经过系统培训后从事自动化测试工作,包括功能自动化.性能自动化.接口自动化以及移动端系统的自动化测试等,由于移动端 ...
 
随机推荐
- CMake初步(1)
			
转自:<你所不知的OSG>第一章:CMake初步(1)http://bbs.osgchina.org/forum.php?mod=viewthread&tid=1189&f ...
 - linux mount挂载设备(u盘,光盘,iso等 )使用说明
			
对于新手学习,mount 命令,一定会有很多疑问.其实我想疑问来源更多的是对linux系统本身特殊性了解问题. linux是基于文件系统,所有的设备都会对应于:/dev/下面的设备.如: [cheng ...
 - Android常用动画alpha和rotate同时使用
			
Android的动画可以是一种动画,也可以多种动画作用于一张图片上,如RotaeAnimation和AlphaAnimation同时放到一个配置文件中 alpha1.xml <?xml vers ...
 - Android的BUG(二) - SurfaceTexture中的野指针
			
当初遇到这个bug,是不定期的低概率出现,最后找到一个比较容易重现的步骤: 启动系统 然后进google + 新建一个帐号(注意是新建一个帐号) 没几步就重启了 这个BUG,一开始追踪也是无头绪的 ...
 - 关于Dropdownlist使用的心得体会
			
2013-07-23关于Dropdownlist使用的心得体会: Dropdownlist使用最多的几个属性: 一.Dropdownlist.Items,负责包含所有选项的容器 DropDownLis ...
 - 【转】linux命令useradd添加用户详解
			
在linux中增加用户我们使用useradd命令而删除用户直接使用userdel即可了,下面小编来给各位同学介绍一下在linux中添加与删除用户方法吧. 1.作用 useradd或adduser命 ...
 - two sets of Qt binaries into the same process的解决办法
			
突然出现了这样问题,吓死我,然后只是把原来编译好的app里面所有的东西删除再编译就好了. 如果删除后不行,可以试试后面的截图所说,反正我是没有试过的 Starting /Qtwork/build-te ...
 - U盘安装centos 7 提示 “Warning: /dev/root does not exist, could not boot” 解决办法
			
1.查询磁盘 cd /dev ls 2.查询结果 sda 是我的硬盘对应的文件名(我机子只有一块硬盘),所以sda4就是U盘对应的文件名了,可以看到是sda4.至此我们重启一下,回到第一个图片所示的界 ...
 - mysql禁用autocommit,以及遇到的问题(转)
			
MySQL的autocommit(自动提交)默认是开启,其对mysql的性能有一定影响,举个例子来说,如果你插入了1000条数据,mysql会commit1000次的,如果我们把autocommit关 ...
 - 简单的http代理服务器
			
简单的http代理服务器 本项目课程是基于 Python 实现的一个简单的 HTTP 代理服务器,要求用户需了解 Python 基础和一定的 HTTP 服务器基础知识.