暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

金享汇 | 广西北部湾银行全栈分布式技术应用实践

为满足业务规模不断扩张、持续丰富业务产品的需要,广西北部湾银行积极拥抱科技革新,持续完善数字化基础设施,推进IT架构转型升级,于2024年11月完成基于全栈信创技术及全栈分布式技术的第三方快捷支付系统建设投产。

第三方快捷支付系统数据层采用GoldenDB数据库,实现系统处理性能的水平扩展,显著增强了联机交易及批量任务的处理效率,新系统上线后并发处理能力较升级前提升10倍以上,同时进一步提升了数据安全性,全面达成对第三方支付业务快捷、高效、安全支撑目标。

下文原刊于《金融电子化》2024年12月刊(下),原文标题为“广西北部湾银行全栈分布式技术应用实践”。

作者:

    广西北部湾银行  崔汉新 赵子翊













随着互联网技术与通讯技术的迅猛发展,传统金融行业正面临着前所未有的转型压力。移动互联与移动金融的蓬勃兴起,极大地促进了互联网金融的快速发展与崛起。对于金融机构而言,更应加快提升金融科技水平,深入推进数字化转型,积极做好科技金融、绿色金融、普惠金融、养老金融、数字金融五篇大文章,推动金融高质量发展。

广西北部湾银行(以下简称北部湾银行)是顺应国家实施北部湾经济区开放开发战略,在原南宁市商业银行基础上改制设立的省级城市商业银行,于2008年10月挂牌成立。作为“广西自己的银行”,截至2024年10月,北部湾银行资产总额超5200亿元,员工数量超5000人,稳步迈入中型商业银行行列,发展规模、效益、速度和质量协调并进,金融服务实体经济能力持续增强,发挥了省级金融平台表率作用,在中银协2024年度“陀螺”评价中综合排名位居城商行21强,是广西唯一上榜的城市商业银行。

为满足业务规模不断扩张、持续丰富业务产品的需要,北部湾银行积极拥抱科技革新,持续完善数字化基础设施,推进IT架构转型升级,于2024年11月完成基于全栈信创技术及全栈分布式技术的第三方快捷支付系统建设投产,实现新技术应用的重要里程碑。

全栈分布式技术应用实践

近年来,北部湾银行大力推动科技赋能,积极应用新技术提升科技竞争力,在云计算、大数据、人工智能等方面勇于探索,大胆实践,取得了良好的效果。北部湾银行自2021年明确全行信创总体转型方向以来,更是按照“能用尽用,能替尽替”的原则,大力推动新兴技术在行内的应用,完成全栈信创云平台、填补国结及票据业务金融信创场景空白等多项信创建设、改造和攻关任务,在国内银行业信创验收中取得优异成绩,得到相关主管部门好评。近年,北部湾银行在分布式技术应用方面全面发力,成功实现多套分布式存储、分布式数据库的应用,2024年,北部湾银行持续发力,建设投产了集成全行级微服务平台和全行级分布式平台的技术中台,进一步加快分布式技术应用。

随着互联网经济的快速发展,北部湾银行第三方支付业务量快速增长。第三方支付业务是持卡人通过第三方支付平台发出支付请求,通过网联支付系统或银联无卡快捷支付系统对接商业银行支付系统完成资金划付,用于互联网商品购买、服务订购、公用事业缴费、资金转移等各种无卡快捷支付、跨行转接服务。北部湾银行原第三方快捷支付系统建于2017年,采用集中式单体架构,系统高并发交易承载能力、数据处理能力已无法适应业务发展需要,因此于2024年重建,新系统是北部湾银行首个基于全栈分布式技术研发的重要业务系统,实现了多项分布式技术的应用实践,取得了良好效果。

第三方快捷支付系统建设方案

在第三方快捷支付系统建设中,北部湾银行结合信创转型要求和架构转型要求,制定了“全栈信创+全栈分布式”的技术方案。“全栈信创”系统适配并运行在信创容器云、信创网、信创服务器、信创存储、信创操作系统、信创中间件、信创数据库、信创微服务平台、信创分布式平台等全栈信创环境,应用信创技术提升系统的安全性和自主可控能力。“全栈分布式”系统应用层采用微服务分布式架构、数据层采用分布式数据库,应用分布式技术提升系统的灵活性和弹性扩展能力。

第三方快捷支付系统应用层设计遵循高效、开放、弹性的原则,采用微服务分布式技术架构,基于全行级微服务平台和全行级分布式平台研发,按照业务功能进行组件化和微服务化,实施业务解耦。在全行级分布式平台建设中,北部湾银行注重多平台协同推进,实现了分布式平台与微服务平台的适配和融合,提供分布式服务的主要组件运行在微服务平台中,服务信息注册于微服务平台。分布式平台主要分为组件基础能力层、组件SDK层和组件运管平台三个部分,分布式组件基础能力层主要包含分布式事务、分布式ID、分布式锁、流程编排等组件。分布式事务组件采用事务协调者集群部署、资源管理器高可用的方式,解决了传统XA协议下的两阶段提交和三阶段提交协议的可用性问题;事务模式支持TCC模式和SAGA模式,解决传统XA协议的阻塞问题,使得事务处理过程中的资源占用最小化,提高事务的并行度。分布式ID组件则为整个技术平台的全局序号/全局流水号生成提供统一管理,支持多种算法,保证序号/全局流水号的唯一;分布式ID组件提供序号规则,动态配置序号的生成算法,保证算法的唯一性,同时提供编码规则,灵活组合多个编码参数,生成全局唯一ID字符串;分布式ID组件支持集群、高可用、分布式的部署架构,保证组件的易用、高效和高可用的接口调用。分布式锁组件提供统一的锁API,由Redis作为底座提供服务,具备良好性能扩展能力,并提供分布式锁的运维管理、监控、以及热点锁的访问管理能力。流程编排组件主要提供组合和复用微服务的能力,为业务人员、开发人员和运维人员提供可视化的流程建模和管理功能,便于理解、设计和监控微服务间的交互流程(如图1所示)。

图1 全行级微服务平台和全行级分布式平台架构图

第三方快捷支付系统基于支付业务场景,设定两个分布式ID规则,通过分布式平台提供的SDK在应用本地高效生成全局唯一的交易流水号,在微服务架构中支持跨微服务共用,同时方便运维进行统一管理。对比非分布式ID,应用分布式ID技术,可以提升系统总体并发能力,提供万级QPS的生成性能,并具备简便集成、多种分布式ID规则灵活配置、可视化的分布式ID状态监控等多项技术优势。第三方支付系统按照单一性、高内聚、低耦合、独立性、异构性等原则,划分了八个微服务应用,通过全行级微服务平台注册中心以及SDK、边车网关、边车外呼、日志采集、日志监控等组件进行微服务的发布和应用集成,提供服务寻址、服务调用、交易链路追踪、交易告警和日志查询等服务能力。

第三方快捷支付系统数据层采用GoldenDB数据库。GoldenDB数据库组件包括分布式管理节点(MGR)、全局事务管理节点(GTM)、分布式计算节点(CN)和分布式存储节点(DN)。分布式管理节点在数据库中主要负责数据库中各个组件的管理、给客户提供智能化运维管理平台,不涉及业务的访问流程,内部通过多数派协议保障高可用。全局事务管理节点在分布式数据库中维护全局事务的全生命周期,提供申请、释放、查询全局事务的能力,保证分布式事务的一致性。分布式计算节点作为数据库对外访问的组件,业务系统通过负载均衡(支持软硬负载)连接各计算节点,计算节点从驱动层接收用户的SQL操作,生成满足分布式事务一致性的分布式执行计划。分布式存储节点是数据最终存储模块,通过安全组、高低水位控制等策略实现高可用(如图2所示)。

图2 分布式数据库组件示意图

GoldenDB数据库采用Share-nothing架构,在部署方式上支持集中式和分布式模式部署,支持多租户方案。北部湾银行GoldenDB数据库采用多租户方案,绑定一组紧密相关的计算节点与存储节点共同作为租户支持一个业务系统运行,并且一个集群中可自主选择集中式/分布式等不同租户类型。通过数据库多租户方案,实现了数据库各租户间的资源隔离,租户资源(CPU、MEM、IO等)的灵活分配,有效提高了服务器资源利用率,可快速完成所需数据库资源的配置和数据库实例的发放;一个数据库资源池集群可根据不同业务分类,分配多个业务群使用,相比于传统数据库能有效较低运维的难度和提升运维管理效率。北部湾银行在本期上线的分布式数据库集群中,除支撑第三方快捷支付系统的分布式租户外,还支撑近期投产的交易流水分析系统以集中式租户形态运行,不同租户之间的计算节点与存储节点相互独立,实现了严格的数据隔离,事务操作以租户边界进行资源和权限控制。

第三方快捷支付系统采用两地三中心、同城双中心双活的部署架构,在设计时根据两地三中心数据RPO/RPO需求,采用双分片1主5副本(3+2+1)方案,单个副本或者单分片故障均可对其他副本和分片透明,缩小了单点故障对业务系统的影响半径。为确保业务连续性和数据可靠性要求,在数据恢复点目标(RPO)上设定了严格标准:同城双中心间实现RPO=0,即零数据丢失;异地数据恢复点RPO确保分钟级;同时在数据库集群内部建立了灾难切换流程,以确保在紧急情况下同城双中心间的快速切换能够控制在1分钟之内完成(如图3所示)。

图3 两地三中心、同城双中心双活架构示意图

在集中式数据库架构中,数据因物理集中存储而受限,难以实现灵活管理。然而,分布式数据库较好地解决了数据线性扩容问题。分布式数据库采用数据分片技术,数据分片将数据分散至租户中的不同数据节点上,应用DUPLICATE(复制)、HASH(哈希)、RANGE(范围)、LIST(列表)以及多级分片等多种分片策略,满足了第三方快捷支付系统业务表、参数表、流水表、历史表等不同场景下的表数据分布与管理需求。业务表主要采用HASH分片以充分利用多节点并发能力提升读写性能;参数表如渠道表、关联系统表、证书信息表、日终参数表等采用全局复制表DUPLICATE,将关联的查询下压到分片内完成提升查询效率;流水表与历史表通常采用HASH、LIST分片方式将数据分散存储,同时兼顾高频查询。

北部湾银行第三方快捷支付系统的顺利投产上线,实现了重要业务系统“全栈信创+全栈分布式”技术研发,成功落地了多项分布式技术应用,实现系统处理性能的水平扩展,显著增强了联机交易及批量任务的处理效率,新系统上线后并发处理能力较升级前提升10倍以上,同时进一步提升了数据安全性,全面达成对第三方支付业务快捷、高效、安全支撑目标。北部湾银行将继续坚持稳中求进、拥抱变革总体基调,紧跟先进技术演进趋势,坚定不移推进数字化转型,全力打造“数智北行”,加速迈向国内一流精品银行、城乡居民首选银行。

文章转载自GoldenDB分布式数据库,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论