vlambda博客
学习文章列表

新核心建设那些事丨攻坚克难,向分布式架构要效益——民生银行分布式核心系统建设历程


文 / 本刊记者 张丽霞


新核心建设那些事丨攻坚克难,向分布式架构要效益——民生银行分布式核心系统建设历程

中国民生银行信息科技部总经理 牛新庄


新技术浪潮的推动下,在客户需求多样化、跨界竞争加剧的复杂金融环境影响下,近年来金融业又掀起了新一轮的核心系统建设热潮,着力打造数字化时代的“智慧型金融”成为各金融机构的重要目标。


核心系统升级换代是一项庞大而复杂的系统工程,不仅建设成本高、周期长,且涉及因素点多面广、事无巨细。本期专题将从各家金融机构项目启动前的技术路线、方案论证,到项目启动后的系统开发、软件测试等层面进行多角度的剖析,试图通过原味披露这些个案实施过程背后的故事及场景,为后来者建设新核心项目提供思想启迪,从而进一步提升金融企业的核心系统建设水平,推动金融业信息化建设高质量发展。精彩内容将陆续呈现,请您持续关注!


本期为该系列专题第四篇“攻坚克难,向分布式架构要效益——民生银行分布式核心系统建设历程”。


时值2014年前后,互联网架构蓬勃发展,民生银行信息科技部的领导班子未雨绸缪,开始深入探讨集中式架构的缺陷,以及全面去“IOE”,使用分布式架构的必要性。经过3年多的刻苦研发,民生银行的分布式核心系统陆续投产,不仅实现了核心技术的自主可控,更为全行带来了金融业务创新发展的强大科技支撑力与可观的低成本优势。基于此,本刊记者采访了中国民生银行信息科技部总经理牛新庄,以全面了解民生银行分布式架构论证、研发以及投产背后的心路历程与丰硕成果。


严谨务实的分布式项目论证

民生银行在最初的分布式项目论证过程中,大家最激烈的争论并不是技术可行性,而是因为分布式架构在金融领域的应用缺少可借鉴的成功案例和成熟商用产品,为此可能带来的业务及系统风险。牛新庄回忆道:“当时我们所面临的最大困难是追求稳健安全的传统银行系统建设思维,同前沿创新的互联网思维之间的碰撞与融合。但我们领导层都希望做出一些变革,让民生银行走在技术创新的前列,通过技术的变革,驱动业务的创新。”


幸运的是在2014年国家发改委、财政部、工信部和科技部组织实施的云计算工程中,民生银行申报的《金融云通用解决方案与分布式核心业务系统研发及推广》项目通过了立项评审,被列入国家战略性新兴产业专项资金补助计划,标志着民生银行的分布式核心项目正式启动。


于是,2014年下半年启动了分布式核心建设项目的技术可行性分析和总体方案设计工作;2015年项目实施工作正式启动,并于年底完成了分布式技术平台的建设与性能验证。


在此阶段,民生银行预设了三种论证方案:一是在原有SAP核心的基础上进行分布式改造;二是直接引入互联网如阿里的分布式架构;三是自主研发分布式平台及核心系统。


牛新庄谈到,民生银行调研分析了多家互联网公司的分布式架构,并结合行内核心系统的实际需求,充分考察了商业与开源方案和软件,其中与支付宝(蚂蚁金服)、京东、华为、浪潮等近十家公司多次交流,在信息科技部内部组织多次技术讨论与评审,完成超过50个关键技术点的验证,最终形成了分布式核心系统的技术方案和实施方案。


由于整个项目属于技术前沿领域,缺少可借鉴的成功案例和成熟商用产品,民生银行最终确定了采用自主研发的方式。基于新技术的核心系统架构转型项目建设规模庞大,并结合民生银行的实际情况,分布式核心系统采取了“分步实施、小步快走”的建设策略。项目建设分为技术验证和技术平台建设、直销银行电子账户业务迁入、存款账户迁入三个阶段,最终完成了分布式技术平台的实践检验,为分布式核心系统的上线推广奠定了坚实基础。


自主可控的新核心建设诉求

银行核心系统管理着最为核心的客户、账户、存款、凭证等信息,涉及所有客户的“钱袋子”和敏感信息、签约信息,提供银行所有业务开展的核心交易和数据。牛新庄强调,银行核心系统对于系统的稳定性、信息的安全性、数据的一致性、账务的准确性、运维的高效高质响应等方面的严苛要求,是其他互联网企业系统所无法想象的。例如,对于模块之间的异步消息通信,互联网公司会允许少量“死信”的存在,即消息通信失败了,重试多次之后仍无法成功,就会直接放弃该消息。但对于银行核心系统而言,一分一厘的误差也是不允许存在的,因此民生银行花费了很多精力去解决这些类似的问题。


另外很关键的一点是民生银行坚决响应国家的战略号召,走自主研发、自主掌控的道路。这些年来,民生银行已经建立了一支高质量的技术团队,尤其在分布式架构解决方案、数据库团队建设等方面成效突出。然而一个企业的力量还是有限的,对于民生银行而言,更是需要有所为有所不为。牛新庄表示,目前民生银行已经掌控了85%的关键技术,但还有15%是无法掌握的,需要同其他优秀的企业合作。民生银行在外部合作中优先选择国产化企业,并与之携手共同成长。


此外,不论是胖核心、瘦核心,还是双核心、单核心,其所解决的本质问题只有一个,即系统敏态和稳态开发的最佳适配方案。传统银行在安全、稳定、风险可控等方面优势突出,具备高可靠、高标准、严格风控、高度合规等特征。在互联网金融时代,面对海量客户、海量交易、海量数据,银行面临着高性能、灵活伸缩、低成本等能力诉求。牛新庄认为这两者并不矛盾,完全可以融合创新、平衡互补。


为此,民生银行搭建了组件丰富、性能健壮、弹性扩展、新技术广泛应用的中后台系统,全行统一的业务中台、数据中台,以及基础开发框架、基础平台等设施,这是构建高质量应用、避免重复造轮子、降低开发成本的有效手段。


新核心建设那些事丨攻坚克难,向分布式架构要效益——民生银行分布式核心系统建设历程


民生银行的新核心新特点

民生银行的分布式核心系统具备稳定、安全、可靠的特点,满足了新时期银行的应用功能需求。


特点一:兼顾降本增效、海量接纳。与传统银行系统架构相比,民生银行分布式架构兼顾了“降本增效”和“海量接纳”的特性,大幅提高业务效益,提升了银行科技金融的核心竞争力,为客户提供高可靠性、高稳定性、高安全性的服务。主要表现在以下几方面:支持十亿级客户的规模,突破核心系统瓶颈;核心业务单功能点降低为按周交付,能够更快地响应业务需求,提高交付速度;系统性能及稳定性数量级提升,客户体验及服务质量极大提升;单账户成本大幅降低,预计每年可节省运营成本近亿元。


分布式核心系统参考互联网技术架构的优点,基于微服务架构和云原生应用的设计理念,采用分层架构设计,运行在X86服务器上,同时也支持虚拟化部署,具有良好的扩展性。采用读写分离和分库分表等方式的数据分布式处理,结合使用分布式缓存和支撑异步处理的消息中心,有效提升系统响应速度和吞吐量。通过采用分布式批处理框架,大幅提升批处理效率,支持海量账户的日终批量处理。应用服务器和数据库服务器采用同城双活模式确保系统的可靠性。


特点二:平台与应用有机整合。民生银行分布式技术平台以开源为基础实现了一整套的分布式框架及中间件,以支持符合金融业务要求,满足海量数据、高并发、高可用、高可靠和横向弹性扩展的银行应用功能。根据CAP理论,在一个分布式系统中,一致性、可用性、分区容错性不可兼得。为满足银行业务对交易处理的苛刻要求,民生银行的分布式技术平台首先保证了可用性和分区容错性,然后通过分布式事务、消息中心保证了基于可靠消息的最终一致性,通过消息中心、统一冲正与全局序列保证交易的幂等一致性。


围绕银行核心系统特点,民生银行分布式技术平台具有九大功能:通过分库分表和读写分离实现分布式数据访问功能;基于可靠消息的最终一致性和基于冲正模型的反向处理实现分布式事务功能;通过RPC服务框架、服务访问控制与限流、服务跟踪实现分布式服务框架与服务治理功能;通过分布式的作业调度和多种容错策略保证分布式批量作业调度功能;通过集中配置管理支持一份代码多份部署功能;通过消息中心实现可靠消息发送与接收和消息幂等性功能;通过分布式缓存提高性能、降低DB负载;通过统一冲正与全局序列实现交易幂等一致性功能;实现开发运维一体化,基于容器技术,支持弹性扩容。


特点三:自动化和智能化的运维管理。分布式架构使运维面临服务层次、调用关系、系统状态更加复杂的挑战。针对分布式架构设备多、应用多、服务多、配置多的特点,民生银行研发了运维支撑体系,建设了十大运维自动化工具,来保障运维有条不紊地进行。一是运维管理集中化,包括分布式管控平台进行服务治理、运维视点平台进行应用查询、集中监控平台集中管理硬件/OS/DB/网络。二是运维操作自动化,包括分布式DevOps平台确保持续交付,灾备自动化指挥平台保障机房切换。三是应用排错可视化,包括交易监控平台实现实时交易分析、OnPlat全景运维平台实现实时链路分析、云图系统实现运维架构可视化。四是服务跟踪智能化,包括一眼清平台进行日志分析、ZIPKIN平台实现服务跟踪。


分布式核心项目建设成果丰硕

首先,软硬件开源和国产化,核心技术自主掌控,为金融科技战略发展奠定坚实基础。分布式核心项目是民生科技运用分布式技术的成功典范,为将来更大范围地推广分布式技术积累了丰富的实践经验和技术标准。项目中关于分布式缓存、消息中间件、分布式数据库等关键技术已经形成了金融级软件开发标准。分布式平台还可以为行内行外其他系统进行分布式改造提供基础环境,将成为金融科技的重要基础技术平台。


其次,核心系统知识产权自主,可灵活适配互联网场景及国内金融政策需求。中国民生银行分布式核心系统实现了客户管理、产品工厂、存款管理和卡管理等业务功能,具备服务海量客户、应对瞬间爆发的海量交易和承载海量数据的能力,满足利率市场化、互联网场景对核心系统的要求。


再次,大幅降低科技成本支出,提升利润空间。分布式核心系统能够实现在同等处理能力的情况下,大幅降低单位成本。以中国民生银行核心系统为例,在硬件方面,从IOE架构向X86服务器转型,能够节约近1500万元硬件支出成本。在软件方面,与每年向SAP公司支付的2000万元软件维护费项目相比,采用开源技术的分布式核心系统的维护费用仅为200万元,每年可节约1800万元维护费用。单账户成本由原来2.2元下降至0.08元,节省了90%以上的费用支出,极大地提升了利润空间。


第四,积累业内领先技术成果,打造一流金融科技人才队伍。民生银行分布式核心系统相关研究成果获得了银行业信息科技风险管理课题研究成果一类证书(2016年)、人民银行颁发的银行科技发展二等奖(2017年)等重要奖项。同时在项目实施过程中累计申请了18项技术创新专利和软件著作权。


最后,契合科技金融战略转型,提升中国民生银行品牌影响力。分布式核心项目的成功投产,对实现向“科技金融”转型的战略目标具有重大的现实意义,有助于在激烈的竞争环境下保持领先优势,提升研发创新效能,改善客户服务质量,增强经营管理能力,扩大中国民生银行“勇于创新、锐意进取”的品牌形象和影响力。


民生银行越来越清晰地认识到国家在核心技术自主掌控和软件国产化方面的高远布局。牛新庄表示,为贯彻落实这一重大战略,民生银行积极发挥行业引领作用,一方面积极、广泛地支持国内各类同业的技术分享、交流与培训;另一方面通过组建民生科技有限公司和搭建金融科技战略合作联盟等手段,建立对国内中小银行等金融机构的技术输出机制和能力。着力推动国产化分布式平台和技术在我国金融领域的广泛应用,夯实基础技术保障能力,为维护我国金融稳定,提升金融创新能力,积极应对政治、经济和金融环境变化保驾护航。



推荐阅读

(点击图片查看精彩内容)



精彩内容回顾







订阅《金融电子化》《金融安防》《金融客服》

可登陆官方淘宝店铺: