如何保障系统稳定性并实现减排?蚂蚁集团有这些关键技术

6f83adfe55699478a8734aab9da23048.gif

4 月 27 日,首届“全球信息系统稳定性峰会”在北京召开。会上,中国信息通信研究院(以下简称“中国信通院”) 公布了首批信息系统稳定性保障能力评估结果、分布式系统稳定性实验室成员单位、信息系统平稳运行优秀案例。蚂蚁集团当选为实验室成员单位,其支付平台凭借在系统稳定和安全等方面的技术与实践,获得“系统平稳运行优秀案例”颁证。

作为实验室成员单位,蚂蚁集团积极参与编写了系统稳定性相关的标准及研究报告,此次峰会上,蚂蚁集团数字科技事业群技术副总经理石世群也做了《支付宝系统双十一稳定性保障经验分享》的主题演讲,分享蚂蚁集团金融级分布式架构 SOFAStack 在系统稳定性保障领域的探索和实践经验。

73b2cf529856e3f2d90efd088cc4201c.png

以下为演讲整理全文:

大家好,我是蚂蚁集团数字科技的石世群。今天我将在线介绍支付宝双 11 稳定性保障的相关内容。

系统的稳定性保障,是一个复杂的系统工程。从 2004 年到 2021 年,支付宝经历了一系列的技术架构升级和迭代,从单元化架构走向弹性上云,进而演化到云原生、绿色计算,这个过程既要考虑容量稳定性,也要考虑成本和效率。

我们做了简单的总结,大概经历三个阶段:

  • 第一阶段,主要解决容量的问题。通过 LDC、弹性能力和 OceanBase,解决了容量理论上无限伸缩的能力。同时,通过全链路压测技术很好的对全链路容量进行验证;

  • 第二阶段,当支付的容量能力达标后,进一步考虑的就是如何通过技术创新去提升整体架构的稳定和效率。典型的场景有 2 个,一个是云原生,云原生架构的核心理念是将基础设施和业务进行剥离,从而释放基础设施的红利,大幅提升创新速度和效率,比较典型的案例就是 ServiceMesh 在蚂蚁的落地。另一个就是我们对于智能监控运维体系,通过数据智能的方式,提升系统应急响应恢复的反应速度。

  • 第三阶段,绿色减排。连续几年,我们在保持峰值稳步增长的情况下,提出了大促 0 成本新增。2021 年双 11,我们的主要方向就聚焦在绿色减排上,通过离在线混部、分时调度、智能 AI 容量等创新技术,实现节约 64 万度电和 394 吨碳减排。

e7d671b671432c1def8e0a9f274d281e.png

接下来,我给大家介绍一下支付宝双 11 大促的关键技术。

一、单元化部署

异地多活逻辑单元架构,蚂蚁内部也叫 LDC,全称是 Logical Data Center(逻辑数据中心),是对 IDC(Internet Data Center,互联网数据中心)的一种逻辑划分,也是支付宝系统实践“单元化部署”所采用的方案。

保障信息系统的稳定性,核心要解决两方面问题:

第一个,单点瓶颈。任何一个互联网系统发展到一定规模时,都会不可避免地触及到单点瓶颈。从单服务器、单应用,到单数据库、单机房,进而到多机房部署、多地部署(异地多活),这个过程就是在不断突破单点瓶颈;

第二个,保障异地容灾能力,这样才能满足金融级稳定性要求。多地多机房部署,是互联网系统发展的必然方向, 这里面要解决很多关键问题,包括流量调配、数据拆分、延时等,当然这些问题都可以通过技术和方案来解决,而承载这些方案的是一个部署架构。尽管可采用的部署方案不止一个,但无论是纯理论研究,还是一些先行系统的架构实践,都把“单元化部署”列为最佳方案。

ef9c4e355a201ea7839070f90bbc6c71.png

所谓单元,是指一个能完成所有业务操作的自包含集合,在这个集合中包含了所有业务所需的所有服务,以及分配给这个单元的数据。一个单元,是一个五脏俱全的缩小版整站,它是全能的,因为部署了所有应用;但它不是全量的,因为只能操作一部分数据。

支付宝内部通过将单元分成 RZone、GZone、CZone 三类,来解决流量调配、数据拆分、延时的问题:  

  • RZone(Region Zone):最符合理论上单元定义的 zone,每个 RZone都是自包含的,拥有自己的数据,能完成所有业务。

  • GZone(Global Zone):全局单元,部署了不可拆分的数据和服务,这些数据或服务可能会被 RZone 依赖。GZone 在全局只有一组,数据仅有一份。

  • CZone(City Zone):以城市为单位部署的单元,同样部署了不可拆分的数据和服务,也会被 RZone 依赖。但跟 GZone 不同的是,CZone 中的数据或服务会被 RZone 频繁访问,每一笔业务至少会访问一次;而 GZone 被 RZone 访问的频率则低的多。CZone 是为了解决异地延迟问题而特别设计的。

基于 LDC 架构,支付宝实现了真正的异地多活架构,实现了金融级 99.99% 可用性,以及理论上的无线容量能力,顺利支撑了大促数十万级的能力,同时也为后续的弹性架构奠定了很好的基础。

二、弹性架构

刚才我们讲到了 LDC 逻辑单元架构,它是理论上具备了无限容量的可能性,但是现实往往是不太可行的,有以下两个方面的原因:

一方面,公司内部自己掌控的资源是有限的,随着支付笔数的快速增长,自持的资源会遇到瓶颈;另一方面,双11大促毕竟是少数时候,如果长时间拥有这么多资源,对于成本来讲也是不经济的,这并没有充分释放云计算的红利。

蚂蚁支付宝在 LDC 架构的基础上,进一步升级了弹性架构,实现了按照业务粒度的弹性能力,把一部分单元转变成弹性单元,在高峰期时弹到云上去,从而实现快速扩容能力。当大促结束时,再把这些单元弹回到日常机房,这样就可以保障资源的更有效利用。所有的弹性逻辑都是在基础设施层面全部做了封装,对业务实现了无感的弹性。我们在 2016 年双 11 大促,有效支撑了每秒十几万级支付峰值,跟自己持有资源的模式相比,成本实现大幅度降低 50% 以上。

d7192cb758256c285136300afcf3e5de.png

三、服务网格

接下来看服务网格 ServiceMesh,这也是非常关键的一个技术。

为什么需要 ServiceMesh?还得从微服务讲起。微服务存在的问题,很多跟服务治理相关,包括组件之间相互依赖、服务管控难、平台运管等问题,我们通过轻量级网络代理,负责微服务间的通讯等工作,以 sidecar 形式部署在容器的独立进程中,并通过一系列的基础设施和业务解耦,高效实现了基础设施的升级。在大促期间,基础设施的迭代提效 10 倍以上。

其次,通过 ServiceMesh 可以实现灵活流量控制,所有的限流、熔断由 ServiceMesh 接管,不需要业务改造,节约了大量的预案研发成本和 SDK 的接入成本。目前 ServiceMesh 已经覆盖了支付宝 100% 核心支付链路,具有百万级别的容器规模,峰值千万 QPS。

fcd85dd6ba890434ae8ef19294e2883b.png

四、线上全链路压测技术的演进

压测是极其重要的容量验证手段,我们刚才讲到的所有方法,都是不断在提升容量扩展的能力。但是也非常需要一个非常好的手段去验证容量是否符合预期,线上的全链路压测技术就变得非常关键。

传统的压测技术有很多问题,主要体现在传统的局部单链路压测不完整,它是以单业务压测为主,数据库层面不好压测,网络层面也不好压,无法有效模拟真实业务的情况。此外,传统线下压测、仿真压测、线上单机引流压测的准确度不高,也没有准确评估资源情况。

64d013fa71bf9881863f9414df9aa277.png

对于整个线上全链路压测来说,我们主要有以下几个要点:

  1. 核心链路分析,建立用户端到端的行为模型。通过大数据技术,基于大促的用户行为和后端链路,构建端到端的流量模型,用来验证全链路压测的充分度。

  2. 压测环境复用生产。通过数据访问代理,把压测数据导到链路上去,不影响正常业务数据,结果是很可靠的。

  3. 压测性能分析诊断。压测过程中,如果遇到问题,可以快速定位问题,并诊断给出优化建议。典型的包括网络诊断(网络质量、带宽)、应用诊断(内存、CPU 热点、线程)、数据库诊断(慢 SQL、CPU、内存)、基础设施(容器、进程)以及全链路诊断(诊断 分布式链路中的瓶颈点)。

  4. 基于过去这么多年的积累,我们在全链路压测上的仿真度超过了 99%,最近几年的双 11 大促都是 0 重大故障,0 资损。

五、智能监控技术

尽管前面做了很多事情,但是对于一个复杂的业务来讲,线上系统不可避免会出现问题,所以怎么快速发现问题、快速应急、快速恢复起来就变得非常重要。

面对大促峰值的情况下,监控碰到的挑战也是巨大的。在大促日志规模流量下,每秒日志量可能达到几百 G,清洗流量可能每分钟达到几十个 T,怎样有效处理这些日志非常关键。

蚂蚁自研的时序数据库引擎 Ceresdb,通过优化采集技术和流式计算引擎,可以基本做到秒级监控,实现 1 分钟发现、5 分钟定位、10 分钟恢复,确保线上时间的快速应急和响应。

  • 1 分钟发现:故障在 1 分钟内被发现,干系人被引入故障处置流程。

  • 5 分钟定位:在 5 分钟内响应故障出现原因,并制定止血方案。

  • 10 分钟恢复:10 分钟执行完毕止血方案,故障恢复。

3c123e9902c777c1f47f8ebacc8702af.png

2021 年双 11,我们从关注峰值、关注流量,重点转向了绿色计算,既考虑成本也考虑效率,确保技术可持续性。我们通过一系列包括在离线混合部署技术、云原生分时调度和 AI 弹性容量等创新技术手段,实现了整体资源各种调度,规模化应用绿色计算,节约了 64 万度电,碳减排 394 吨。

50ed3547e557ff1ae82e4cd11c928a77.png

前面讲了很多保障系统稳定性的技术能力和方法,但对于每个组织来说,从头打造这些能力和体系,需要花费很长的周期,也需要做很多复杂的工作,为了更好帮助各行各业实现数字化升级和转型,蚂蚁集团也在积极大力推动相关能力的科技开放。

六、原生分布式数据库 OceanBase

接下来,我们来看一个重要的产品——OceanBase。OceanBase 内部经过 9 年双 11 的验证,有非常多应用经验,也很成熟稳定。OceanBase 作为原生分布式数据库,具有无线扩展、永远在线的能力,保障数据不丢失,30 秒内实现自动容灾恢复。OceanBase 适用于各种大型场景以及对业务连续性要求高的行业,对于强一致性、高可用、高 HTAP 性能要求的行业也非常适用,目前在金融、政府、运营商、交通、能源等行业已经有很多成功实施的经验。

6acc362d291403c37b19b84ad40c9f59.png

0b7ac6cc1394fcd1527b3c02830fcbe2.png

同时,我们也对外开放了 SOFAStack 云原生科技产品,把单元化架构、服务网格 Service Mesh、全链路压测、监控应急体系通通打包在一起,将蚂蚁十多年技术能力经过产品化,实现成为成熟的商业化产品和服务。目前已经服务几百家客户的核心业务系统,我们希望通过这些努力,能够帮助各行各业更好实现数字化升级和转型。

今天我就分享到这里,感谢大家!

   本周推荐阅读  

72db0fa2f1500747a8e7b6c2ed04c70d.png

MOSN 1.0 发布,开启新架构演进

21bbf2b5a29403e480056b372a7b594e.png

HAVE FUN | SOFABoot 源码解析活动

1af4159b6ed4a7c14fd335820b071650.png

SOFARegistry 源码|数据分片之核心-路由表 SlotTable 剖析

70955704586ec0409151e334f8eed83e.png

MOSN 文档使用指南

1cc8533c5e6d0cd6a0d2c27b7c7da211.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值