案例 | 中小银行分布式架构探索与实践

 

案例 | 中小银行分布式架构探索与实践

文章插图
 
近年来,随着银行业务量的快速增长,一些大型商业银行早已布局分布式架构转型,这不仅是国家安全战略的要求,也是随着互联网发展,商业银行提升自身金融服务能力的需要 。商业银行系统构建高可用、易扩展、低成本的分布式架构,逐渐替代集中式架构成为大势所趋 。2015年以来,上海农商银行按照“整体规划,分层分类,逐步推进”的策略,在分布式架构转型方面进行了一些探索和实践,走出一条有自身特色的转型之路 。
案例 | 中小银行分布式架构探索与实践

文章插图
上海农商银行金融科技部副总经理兼开发中心总经理  陶建林
分布式架构和集中式架构简介目前,商业银行系统采用的系统架构主要有两类:一类是集中式架构,主要通过垂直扩展,增加单机配置或设备升级以提升系统的处理能力;另一类是分布式架构,主要以水平扩展,通过横向扩充节点,每个节点运行独立实例,节点与节点之间通过网络互连,提高系统处理能力 。
1.集中式架构特点 。集中式架构系统的计算、存储都在一套硬件体系内,无需面对网络分区问题,同时可以通过存储的冗余和软硬件结合的高度优化,实现系统的高效运行 。因此这种架构成熟稳定,可靠性好,同时集中式架构部署结构简单,设备数量少,在运维复杂度上较分布式架构有天然优势 。目前上海农商银行主要核心业务系统均采用集中式架构部署,系统交易成功率和业务连续性得到了有效保证,业务量年均增长率近20%,至2019年底,日均交易量在1000万笔左右 。
虽然传统的集中式架构具有成熟稳定、高可靠、强一致性的特点,但随着商业银行业务的不断发展,也慢慢暴露出来以下问题 。
成本控制问题:集中式架构中很多高并发的业务系统采用小型机,大型商业银行核心账务系统往往采用主机设备,造成软、硬件成本以及运维成本都非常高昂,在一定程度上限制了业务的发展 。
处理能力限制:目前商业银行随着业务的不断发展,整体应用系统的建设规模逐渐庞大,这种垂直、单一的扩展模式,不具备横向处理能力,处理能力受到限制 。
风险控制问题:由于集中式架构本身扩展性的不足,所有业务都跑在一个单点上,一旦发生故障就可能影响到所有用户 。同时随着互联网业务的发展,对业务连续性要求更高,传统架构很难保证7×24业务不中断的服务能力 。
无法快速交付:传统的开发模式应用内部模块、应用与应用之间的耦合度非常高,使得软件的开发和产品交付周期比较长,无法满足互联网需求的快速交付要求 。
2.分布式架构的特点 。分布式架构按照一定的维度将系统功能拆分,通过负载均衡机制,将业务分摊到多个节点上处理 。这种架构的优点是可以采用更开放的架构,各节点松耦合,对底层产品的可靠性、可用性依赖降低,可以基于廉价的硬件和开源软件构建,成本更为低廉,可用性、可扩展性更好 。尤其是随着应用规模的扩大,边际成本将更低 。
这种架构的难点是要做好各节点的协同工作,尤其是要处理好数据的一致性、完整性问题 。根据CAP理论,在可用性、分区性与一致性三者之间,同时只能满足两个,如果要满足可用性(A)、分区容忍性(P),就需要牺牲一致性(C) 。业界的一般做法是根据业务特点,通过较为复杂的应用设计,放弃实时一致性、保障最终一致性来解决该问题,分布式架构增加了应用设计和研发的复杂度 。此外,随着节点数的增加和分布部署,对运维管理、异常处置也提出了更高要求 。
通过对集中式和分布式架构在业务支撑、一致性/可用性、运维成本/故障恢复方面分析发现,分布式架构在经济性、安全自主、灵活性、可伸缩性等方面有明显优势 。随着金融系统需要处理的交易量与数据量越来越大,分布式架构在这方面的优势也会越来越明显 。集中式系统在可维护性、一致性方面有优势,而分布式系统需要达到同等或更高的可维护性与高一致性,需要通过先进的分布式中间件与大规模运维平台来支持 。
架构演变及转型策略1.架构转型关键点 。商业银行实施分布式架构,需要从系统架构理念、设计模式、IT运维机制、人才队伍建设和科技支撑体系等5个方面进行通盘考虑 。整体的诉求是优化应用架构、数据架构、技术架构,建立灵活开放、高效协同、安全稳定的IT架构体系,强化对业务快速创新发展的科技支撑 。


推荐阅读