蚂蚁金服的技术架构,到底有多牛?

程序员的成长之路

互联网/程序员/技术/资料共享 

关注

阅读本文大概需要 4.5 分钟。

来源| 阿里云峰会

文| 技术领导力社区

本文整理自,阿里高级技术专家-许文奇在2019阿里云峰会上的分享《技术中台-分布式架构在蚂蚁金服的实践》。

一、分布式架构的优势和理念

01

传统单体架构特点

(点击图片放大)

通常一个初创型项目,都是从单体架构开始的。

优点就是快,易于开发、测试、部署,一个WAR包发上生产就完事了。

缺点也很明显,因为所有模块都在一个程序包里,导致编译慢、启动慢、代码冲突,每次合并代码的时候都是恶梦,发布成功率?完全靠运气。

02

微服务架构 vs 单体架构

(点击图片放大)

复杂度较小时采用单体应用生产效率更高,复杂度到了一定规模时单体应用的生产效率开始急剧下降,这时对其进行服务化拆分才是合算的。

微服务架构之所以得到广泛认可,源于对业务多变性的不可预测,微服架构能够不断的自演化 ,进而快速适应业务变化。

03

模块化开发

微服务架构,从业务顶层设计开始,按照业务线进行模块拆分,从表现层、逻辑层、数据层进行独立的剥离单体应用。很多企业都经历过单体应用到服务化应用的拆分过程,这里要注意业务的连续性、数据的完整性问题。

04

微服务架构的负载均衡优势

以前通常用LVS、F5作为接入层的负载均衡服务,主要提供限流、负载、安全等等。

在微服务架构中,由网关作为接入层,提供轻量级的负载均衡、协议转换、鉴权等服务,微服务通常有服务治理框架,如DUBBO等,提供服务治理、服务注册、服务发现、隔离等。

05

数据访问瓶颈解决方案--数据库垂直切分

分布式架构是如何解决数据访问瓶颈的呢?首先是数据库的垂直切分,比如,按用户、交易、账务拆分到独立的数据库当中,缓解了数据存储和访问的压力,当然也可以做主备库,进行读写分离的。

06

数据访问瓶颈解决方案--数据库水平切分

其次,进行数据库的水平切分,比如交易数据库和数据表的数据量太大,可以按交易时间进行分表、分库,拆分表的数量计算方法见上图。

拆表拆库是解决数据访问、存储问题,但是会给数据查询带来很大麻烦,比如跨多表、多库的复杂查询场景。解决的办法很多,通常有:用ES进行复杂查询,筛用ID再到库里捞数据(即复杂查询拆分多次查询),或用分布式海量数据库方案,不去做太细粒度的拆分库表,如下面会提到的OceanBase。

二、分布式架构实践举例--分布式TA系统

07

传统TA系统架构

传统TA系统架构,清算串行效率低,无法通过增加机器线性扩展性能,一般使用大事务,出现问题全部回滚。

08

分布式TA系统架构

分布式TA系统架构,结构更合理,也更复杂。分成了:接入层、业务服务层、SOFAStack层、LAAS、运维工具链、治理控制。

接入层:包括协议转换、访问控制、文件传输、运维工作台。

业务服务层:即业务核心逻辑服务,如:账户、交易、账单、清算等。

SOFAStack:蚂蚁金服的通用服务组件,许多都开源了,包括:微服务框架、分布式事务、任务调度、消息队列、数据代理、链路跟踪等。

分布式TA系统的需求攻克的技术难题。分布式清算任务如何高效实现?分布式下,加大应用处理出错可能性,那清算任务如何确保正确性?下面会谈谈如何解决。

09

分布式任务调度平台

分布式任务调度平台,支持:

自定义分片,高效利用集群计算能力。

执行中可对任务进行暂停/续跑,强制取消。

任务失败重试机制,保障整体计算任务成功。

10

清算任务调度

清算任务调度,整个架构分为:1)任务拆分,即申请交易文件,按一定的逻辑进行数据分片;2)任务执行,将执行处理过后的数据,存入流水库;3)核心服务,包括交易、清算、账务、账户等。

11

清算的容错和核对机制

清算的容错和核对机制,包含:日初始化、文件导入、清算处理、收益计算、份额调整、清算导出、二次清算、收益导出。

每个环节都可以冲正重做。

可以按文件、用户、备份点进行作业回滚。

优点是,任意流程可回滚、精准逐笔核对,支持按中台用户回滚,缩短了清算时长。

三、分布式架构下如何保障系统的可靠性及稳定性

12

灰度发布机制

灰度发布机制,流程包括:beta发布、分组发布、灰度引流、全量发布。

清算灰度,可以灵活的按用户维度抽取分片,缩短灰度时间。

13

线上全链路压测

线上全链路压测,通过数据访问代理,压测数据进入线上影子表,不影响正常业务数据,全链路压测特点有:

1、压测环境复用生产,结果可靠;优于线下。

2、压测数据打标无法进入生产环境,表级隔离。

14

OceanBase高可用机制

OceanBase高可用机制,基于Paxos协议的典型三副本部署:

1)数据强一致性;

2)持续可用;

3)主备自动切换;

4)单机、机房、城市级故障:不停服务,不丢数据;

OceanBase分布式数据库方案,优于商用数据库的主备库方案,主要体现在:分布式数据库,写事务到达超过半数库,少数库异常不影响业务,两地三中心多活,灰度升级。

15

OceanBase常用部署方案

OceanBase的部署方案有:

同城三机房,同城多个核心机房,相距30公里以内,延迟约在0.5~2ms之间;

两地三中心,正常情况下和同城三中心部署的延迟一致,其中一个城市的一台ObServer 宕机会增加异地同步延迟。

16

同城双活容灾架构

同城容灾双活架构,平时以主机房为主,承载日常交易,少量交易走备机房,架构特点是:

1)同机房优先,避免跨损耗

2)对应用无任何侵入

3)像单机房一样开发部署应用

4)容灾自动切换

<END>

推荐阅读:

强烈推荐 16 款 IDEA 插件,让你的开发速度飞起来!

Java 泛型背后的原理是什么?

5T技术资源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,单片机,树莓派,等等。在公众号内回复「2048」,即可免费获取!!

微信扫描二维码,关注我的公众号

写留言

朕已阅 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/59224.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蚂蚁金服 CEO 突然辞职!去向很意外。。。

点击下方“民工哥技术之路”&#xff0c;选择“设为星标” 回复“1024”获取独家整理的学习资料&#xff01; 据媒体曝料&#xff0c;3月12日晚间&#xff0c;蚂蚁金服CEO胡晓明(花名孙权)发布内部邮件&#xff0c;宣布自己将辞去蚂蚁金服CEO一职&#xff0c;改而负责蚂蚁生态社…

突发!蚂蚁集团CEO宣布辞职,阿里方面表示属实!

点击上方“码农突围”&#xff0c;马上关注 这里是码农充电第一站&#xff0c;回复“666”&#xff0c;获取一份专属大礼包 真爱&#xff0c;请设置“星标”或点个“在看” 来源丨中国基金报 蚂蚁集团又有大事发生&#xff0c;刚刚&#xff0c;CEO胡晓明宣布辞职&#xff01; 蚂…

阿里人事巨变!张建锋卸任 CTO,胡晓明任蚂蚁金服 CEO

肉眼品世界导读&#xff1a; 大家好&#xff0c;我是小编品品&#xff0c;一周前我们推送过我们的一篇原厂文章《繁荣的阿里&#xff0c;正在经历狂风骤雨般的重生》&#xff0c;由于我们与业界各个大厂的LEADER都保持良好的接触&#xff0c;不知是否此篇文章讨论内容很快传到…

蚂蚁金服上市估值1.4万亿,阿里整栋楼沸腾,员工能分多少钱?

点击上方 "程序员小乐"关注, 星标或置顶一起成长 每天凌晨00点00分, 第一时间与你相约 每日英文 Good friends are like stars. You don’t always see them, but you know they’re always there. 好朋友就像是星星。你不一定总是能见到他们&#xff0c;但你知道&a…

蚂蚁金服上市诞生千个亿万富翁,财富自由,离你不远!

近日&#xff0c;蚂蚁集团官宣上市计划&#xff0c;消息宣布之后&#xff0c;整栋楼灯火通明&#xff0c;欢呼雀跃&#xff0c;仿佛空气中弥漫着“财富自由”的气息。 那蚂蚁金服上市&#xff0c;意味着什么呢&#xff1f; 如果按当下蚂蚁金服的估值和员工持股的比例来估算&…

蚂蚁金服

27日&#xff0c;《麻省理工科技评论》2017 年度全球 50 大最聪明公司榜单发布&#xff0c;蚂蚁金服作为唯一一家金融科技公司位列49&#xff0c;排在拥有1700名AI专职员工的百度之前。上榜评论为&#xff1a;探索使用AI进行信贷业务&#xff0c;以及通过区块链提高安全性。 说…

蚂蚁估值之惑:金融科技公司可以约等于科技公司吗?

作者 | 周公子 来源 | 周观新金融 金融科技公司是科技公司吗&#xff1f; 史上最贵的一只蚂蚁&#xff0c;终于要过会了。这几乎是全民关注的一场IPO&#xff0c;区别在于&#xff0c;外行看热闹&#xff0c;内行看门道。 IPO前夜&#xff0c;关乎蚂蚁的估值、更名等讨论不…

蚂蚁金服副 CTO胡喜:从 BASIC 到 basic ,蚂蚁金服十五年技术架构演进之路

主要观点 1. 蚂蚁金服过去十五年&#xff0c;通过技术重塑了支付和微贷业务。Blockchain (区块链)、ArtificialIntelligence&#xff08;人工智能&#xff09;、Security&#xff08;安全&#xff09;、 IoT&#xff08;物联网&#xff09;和 Cloud computing&#xff08;云计…

蚂蚁金服更名 一场有关数字科技的阳谋!

历史很难假设&#xff0c;但我们相信这是蚂蚁必走的路&#xff0c;从科技到金融再回到科技&#xff0c;蚂蚁一路“踩坑”不少&#xff0c;但收获更多。最为重要的是&#xff0c;蚂蚁自己也没想到会在科技方面闯出一片市场&#xff0c;这次也是为了这个广阔市场而更名。 出品&a…

AIGC和智能数字化新时代

目录 AIGC的意义AIGC底座及生态AIGC赋能内容创作4大模态AI文本生成AI音频生成AI图像生成AI视频生成 AIGC的技术思想AIGC的重要基建TransformerChatGPT的训练过程示意图ChatGPT的局限性包括 AIGC的职能应用AIGC与产品研发AIGC与市场营销AIGC与管理协作 AIGC的行业应用AIGC咨询行…

数据分析报告撰写概览

前言 在做数据分析的日常工作中&#xff0c;对数据进行整理、分析并提炼要点、并将分析过程与结果写成一份通俗易懂的报告是必不可少的工作之一&#xff0c;也是一个优秀运营、产品、人力、数据等职场人的必备技能&#xff0c;是支持决策的依托。 数据分析报告是完成数据分析的…

如何撰写数据分析报告?

Step1&#xff1a;目标确定 这一步在工作中通常是由你的客户/上级/其他部门同事/合作方提出来的 第一次的数据报告需要自己来提出并确定目标&#xff0c;选择目标时&#xff0c;需要注意的点&#xff1a; 选择一个比较熟悉&#xff0c;或者比较感兴趣的领域/行业 选择一个范…

【研究院】一年了,再看看江湖中的达摩院

国内三大科技领头羊BAT&#xff0c;BT我们已经介绍过&#xff0c;今天随我一起揭开阿里巴巴技术背后的神秘面纱。 作者 | 臧小满 编辑 | 臧小满 01 达摩院的诞生 1.1 冠名与成立 2017年10月11日&#xff0c;第八届云栖大会在杭州拉开了帷幕&#xff0c;这次大会上&#xff0c…

阿里达摩院做AI这两年

整理 | Jane 出品 | AI科技大本营&#xff08;ID&#xff1a;rgznai100) 2017 年 10 月的杭州云栖大会上&#xff0c;阿里巴巴正式宣布成立达摩院&#xff0c;未来三年将投入将超过 1000 亿人民币用于基础科学和颠覆式技术创新研究。达摩院官网正式上线后&#xff0c;我们看到达…

达摩院开源低成本大规模分类框架FFC CVPR论文深入解读

团队模型、论文、博文、直播合集&#xff0c;点击此处浏览 一、论文&代码 论文链接&#xff1a;An Efficient Training Approach for Very Large Scale Face Recognition 应用&代码&#xff1a; https://modelscope.cn/models/damo/cv_ir50_face-recognition_arcfac…

达摩院开源工业级说话人识别模型CAM++

近日&#xff0c;达摩院正式向公众开源工业级说话人识别通用模型CAM&#xff0c;兼顾准确率和计算效率&#xff0c;训练labels类别达20万&#xff0c;每类含20&#xff5e;200条梅尔频谱特征。当前该模型已上线Modelscope魔搭社区&#xff0c;后续将陆续开源针对各场景优化的工…

270亿参数、刷榜CLUE,阿里达摩院发布最大中文预训练语言模型PLUG(开放测试)...

转自&#xff1a;机器之心 经历「大炼模型」后&#xff0c;人工智能领域正进入「炼大模型」时代。自去年 OpenAI 发布英文领域超大规模预训练语言模型 GPT-3 后&#xff0c;中文领域同类模型的训练进程备受关注。今日&#xff0c;阿里达摩院发布了 270 亿参数、1TB 训练数据的…

国外大牛 Adam Fallon 十年软件开发的一些经验分享

经过了长达十年的编程生涯&#xff0c;我对于软件工程的理解和认识已经日趋成熟。在此&#xff0c;我想与大家分享一些对于编程的独到见解和心得体会&#xff0c;希望这些经验可以为你的编程之路提供一些参考。 首先&#xff0c;我发现有一个庞大而声音响亮的行业&#xff0c;致…

270亿参数的“中文版GPT-3”来了!阿里达摩院发布超大规模语言模型PLUG

自18年谷歌BERT横空出世以来&#xff0c;预训练语言模型一跃成为自然语言处理领域的研究热点&#xff0c;海量数据与大规模模型的预训练少量下游任务数据微调&#xff08;Pre-training Fine-tune&#xff09;也成为NLP任务的新范式。从在开源数据集上进行评测到业务实践中的价…

阿里达摩院TableQA技术让表格说话

作者&#xff1a;水德 在过去两年时间里&#xff0c;阿里达摩院对话智能团队&#xff08;Conversational AI&#xff09;围绕 TableQA 做了一系列探索&#xff0c;先后在四大国际权威榜单上取得第一名&#xff0c;并且开源了首个中文预训练表格模型。同时&#xff0c;把 Table…