浙江移动首个基于阿里云技术的生产应用上线成功-阿里云开发者社区

开发者社区> 阿里云头条> 正文

浙江移动首个基于阿里云技术的生产应用上线成功

简介:
+关注继续查看

一、项目背景

为落实公司“十三五”战略,建立“架构先进、运营高效、内外兼顾”的IT体系, 浙江移动近日受总部信息技术中心委托和指导,探索传统企业与互联网公司新型合作模式,跟踪行业发展态势,开展新技术、新产品研究和创新,在集团内首次携手亚洲最大的云计算公司——阿里云,在“可监可管可运维”基础上,开展第三方基础组件引入试点验证。

二、实施策略

浙江公司经过与阿里云工程师多次讨论后决定,采用分阶段实施与快速试点,在降低对应用侵入的同时又要兼顾实际效应,考虑轻量级系统验证和关键业务引入。试点具体分为多个阶段执行,其中一阶段以快速落地验证技术组件为目标。

一阶段总体原则以经历天猫双11核心交易业务和各类型业务考验的阿里云DRDS分布式关系型数据库服务(Distributed Relational Database Service)组件在M域试点应用的快速验证为诉求,完成“统一用户管理”应用迁移DRDS的“短平快”功能验证,开发上尽量以最小化改造实现DRDS的“分库分表”、“平滑扩容”以及“无差别运维”。一阶段完成后出具改造的评估报告,为二阶段实施提供参考。

三、一阶段总结

一阶段选取了“统一用户管理”系统作为试点,该应用原来采用了传统中小型应用常见的前后端一体化架构,原有的数据库为PostgreSQL。随着业务的不断发展,“统一用户管理”系统的传统基础架构正不断接受挑战,其中数据库单点瓶颈问题尤其突出,存在单库容量平瓶颈、扩展困难、二次开发难度高、性能问题难以优化等诸多问题。

1、改造前后系统部署架构对比如下:

a0766392b658aca3ed677a970a1107432c4b9c6c

图1——原“统一用户管理”系统部署架构

fd6a5691b5c2bf2159bfd090f4924536d30ee583

图2——“统一用户管理”接入DRDS后的系统部署架构

2、一阶段实施后的收益:

应用本身只需进行少量的接口适配工作即可接入DRDS,收益则是分布式数据库所带来一系列优秀特性:

1)分库分表

支持数据库分库分表,在创建分布式数据库后,可以按照业务特性设定拆分规则,实现数据水平拆分。

2)透明读写分离

通过使用只读实例实现读写分离,可低成本增加集群读负载能力,释放主库压力,且对业务代码透明,无需改造;同时具备一致性读能力。

3)数据存储平滑扩容

当出现数据存储容量和访问量瓶颈时,支持在线存储容量扩展,扩容无需应用改造,扩容进度支持可视化跟踪。

3、一阶段实施过程中的挑战:

“统一用户管理”作为首个接入试点的应用,在一阶段实施过程中先后遇到数据库语法不兼容如何解决、如何制定拆分方案、分布式事务如何解决等问题,并一一攻克。

1)从PostgreSql到DRDS

应用原有数据库选型为PostgreSQL,而DRDS目前仅可以无缝对接Mysql。因此,应用首先要完成数据库切换并解决数据库间Sql方言或特性差异的问题。

开发团队从代码逻辑入手,全面替换了不兼容的数据类型,并在功能测试中不断分析SQL执行效率并进行细致优化,为应用后续接入DRDS做好充分准备。

2)分库分表拆分规则

应用存在若干千万级的核心大表,在迁移到DRDS时应根据“确定业务主体——寻找关键字段——计算分库分表数”三步原则处理。

以工单操作属性表为例,该表所有操作围绕“工单操作”进行,因此选定applyopid(工单单号)为拆分键。未来预估此表1-2年的数据总量为六千万行,根据以下公式可得此表需按照分库且每个分库两个分表执行:

单库物理分表数 = CEILING(60,000,000 / ( 1 * 8 ) / 5,000,000) = 2

da36c2ea0cfea993ae6dca2e3219c937bc87af0d

图3——分库分表规则说明

3)分布式事务实践—全局事务服务(Global Transaction Service,简称 GTS)

在对应用的几张核心大表进行拆分后,原本存储在单库单表里面的数据分散到了多库多表里,因而应用在对相关数据进行写操作时会涉及到分布式事务的问题。

分布式事务管理的传统解决方案是基于XA协议的两段提交方式,需要进行针对性的开发,对已有业务逻辑有较大侵入,且性能较差。

经过综合评估后,决定引入阿里云的全局事务服务GTS。GTS具有接入简单、与DRDS无缝衔接、对业务逻辑无侵入的特性,有效地解决了由数据库拆分引发的一系列事务控制问题。

de7f7046108a0ff53b6f1f543718e452dbdf4323

图4——“统一用户管理”系统接入GTS部署示意图

四、建设历程

一阶段于今年2月上旬立项,春节后正式开始实施,在浙江移动和阿里云双方精诚合作下,前后仅用了1个多月的时间就将试点应用成功发布上线。期间重大工程里程碑如下:

1、2018年2月上旬,在春节前完成立项,春节后项目正式启动。

2、2018年3月底,系统成功将数据库迁移至MySQL。

3、2018年4月底,系统完成生产数据割接并正式接入DRDS。

五、延展思考

本次合作是中国移动集团内部首次与业界先进互联网公司的深度技术合作,在践行集团“可监可管可运维”理念的基础上,通过一阶段试点业务的改造实践,在组件能力、运维模式、运维工具、集成方案等方面磨合、积累、沉淀了宝贵的经验,也在项目协作、架构匹配上,初步验证了浙江移动与互联网公司先进技术、理念相结合的可行性,为后续二、三阶段在浙江移动的核心系统上开展更加深入的试点工作奠定了坚实基础。

关于三墩IT人:

“三墩IT人”微信公众号于2014年12月底建立,是浙江移动IT团队建立的面向全行业的IT技术和经验交流平台。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
NodeJS 后端开发 07 MySQL数据库连接池开发生产应用
前篇 【NodeJS 后端开发 06 连接MySQL 】简单尝试了mysql js库来连接数据库。
12 0
阿里云视觉AI应用创新赛开启——技术公开篇之AlibabaWood
AlibabaWood联合设计师打造了可以根据素材内容自动匹配的转场动画特效体系。使得生成的视频动效更加丰富、更加个性化,真正做到千人千面,快来了解详细内容。
1020 0
喜报!阿里云自研云原生数据仓库AnalyticDB获颁浙江省科学技术奖成果产业化奖励
2021年4月28日,杭州市制造业高质量发展大会召开,并公布《2020年全市制造业高质量发展重点奖项目录》。阿里云自研云原生数据仓库AnalyticDB因曾荣获2019年浙江省科技进步一等奖,再次入选科技创新类省级科学技术奖成果产业化项目。
913 0
数十万应用结点全息监控,ARMS新上线的应用监控神器到底有多牛?
就在不久前,2017年阿里双11刚刚创下电商史上的新销售奇迹,24小时交易金额达1682亿,每秒交易创建峰值325000,每秒支付峰值256000!在这个海量交易背后是数十万个结点规模的应用的高效运行。
6749 0
视觉生产技术探索和应用
在这个人工智能已经普及的时代,各行各业都充斥着AI的身影。阿里云视觉平台是基于阿里巴巴视觉智能技术实践经验,面向视觉智能技术企业和开发商(含开发者),为其提供高易用、普惠的视觉API服务,帮助企业快速建立视觉智能技术的应用能力的综合性视觉AI能力平台。本节达摩院资深算法专家星瞳(谢宣松)将带你了解视觉生产的相关技术和应用。
384 0
【报名】【阿里云飞天技术汇】“阿里云在线直播技术与应用分享”主题沙龙·北京站开始报名啦
如何快速搭建移动直播系统?在互动直播中如何降低延时?视频直播的经典案例应用?那么,锁定“阿里云在线直播技术与应用分享”沙龙,届时阿里云专家将会一一为您解答!
1339 0
Flink SQL CDC 上线!我们总结了 13 条生产实践经验
针对平台现在存在的问题,我们提出了把报表的数据实时化的方案。该方案主要通过 Flink SQL CDC + Elasticsearch 实现。Flink SQL 支持 CDC 模式的数据同步,将 MySQL 中的全增量数据实时地采集、预计算、并同步到 Elasticsearch 中,Elasticsearch 作为我们的实时报表和即席分析引擎。
13760 0
Web应用防火墙按量资源包上线售卖(WAF-V4.2.0.0)
信息摘要: web应用防火墙按量资源包上线售卖,支持按量后付费账单从默认资源包抵扣,方便用户操作,并有效支持分阶定价,计费更合理。适用客户: 使用Web应用防火墙按量计费版本的客户版本/规格功能: web应用防火墙按量资源包上线售卖,有效支持分阶定价,根据客户的使用量定义不同的折扣粒度,计费价格更合理。
531 0
阿里云机器学习技术与应用
本文整理自2017云栖大会-成都峰会上阿里云高级专家刘吉哲的分享讲义。讲义主要分享了阿里云机器学习系统PAI2.0的算法、框架及其关键技术和应用举例。
1712 0
+关注
阿里云头条
你关注的阿里云!
979
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载