近十年来,中国金融市场环境发生了翻天覆地的变化,国际局势风云变幻,国内经济稳中趋缓,利率市场化进程加快,互联网金融蓬勃发展,同时,随着新兴技术不断成熟,加速与金融场景的融合,促使银行面临的经济环境、市场竞争环境以及客户需求等发生了深刻变化,为银行业及银行信息系统发展带来了全新的机遇和挑战。
银行核心系统作为银行业务信息化处理的引擎,是银行IT系统中最关键的环节。在银行信息系统不断发展的过程中,银行核心系统也由最初仅能处理单一网点业务的单机版业务系统(1980s-1990s)起步,经过数据大集中(20世纪末-2008年左右)、瘦核心(2008-2014年)后,迎来了飞越式发展,进入分布式时代。
那近十年来,银行核心系统是如何发展的?
分布式时代的前奏:第一代JAVA版银行核心系统的落地
在数据大集中时代,由于主机能力和网络能力的增强,“大核心”(或者叫“胖核心”)是核心业务系统的常见形态。随着各项外围业务的发展和业务量的逐年激增,大行逐渐进入“瘦核心”形态,将各类专业、特色业务系统从核心业务系统中剥离,以优化核心的设计,由此也诞生了大量的外围系统。
同时,大集中带来的“竖井式开发”弊端在“瘦核心”形态下尤为明显。大量外围系统往往向独立应用发展,导致数据不一致、功能不协调、客户体验不理想等诸多问题,从而推动着新一代银行核心系统的探索与实践。
在2010年以前,银行核心系统的主流开发语言还是大机上的COBOL、C语言或是数据库存储过程。当时的长亮科技判断出Java语言天生具有跨平台的特性和对互联网业务的支持,一旦基于Java语言的银行核心系统开发成功,将会解决银行核心系统所面临的一系列痛点。正是基于此考虑,长亮科技才敢于第一个吃螃蟹,毅然决定组建团队研发Java版核心系统。在2010年完成原型开发,并在IBM北京实验室进行专项测试,测试效果非常理想,得到IBM实验室高度评价。
2011年,我国银行业第一代Java核心系统迎来了落地契机,当时恰逢恒丰银行需要重构核心系统,他们也倾向于Java语言,双方一拍即合。历时两年的建设, 2013年长亮科技Java版核心系统在恒丰银行成功投产,成为国内第一版Java版核心系统。
分布式时代的开端:首个分布式核心系统落地
Java版核心系统在一定程度上解决了“竖井式开发”造成的问题,在“业务侧”取得了进展,但在“技术侧”,银行核心系统仍然建立在进口服务器之上。在当时银行传统的IT技术架构发展模式下,“主机+x86”的混合架构仍然无法取得突破,而在互联网领域,基于纯“x86”服务器的分布式架构得到了快速发展。
2014年,“突破”的历史契机来临了,中国首家民营银行和互联网银行——微众银行成立。它具有腾讯的互联网基因,目标客户是数以亿计的QQ用户和微信用户,因此微众银行提出构建分布式核心系统理念,对核心系统的要求是能支持5亿客户容量,同时要求系统支持弹性扩展。
5亿的客户量,在当时可以说是个天文数字。基于传统架构的核心业务系统在短时间内无法通过调整达到分布式系统的设计要求,在这次角逐中,很多参与POC的厂商在1周之内便因此而退出。但长亮科技的核心系统在2个月内就达到了微众银行的全部预期。当时,微众银行要求对接时下主要应用于互联网公司的MySQL数据库,这在银行业内鲜有应用,而长亮科技此前也主要基于Oracle数据库进行开发,不过,长亮科技的POC团队只用了1周时间便完成了MySQL对接工作,这完全得益于Java版核心系统的跨平台、跨数据库前瞻性设计。MySQL数据库的成功对接,让微众银行对建设分布式核心系统信心倍增。
“我们也是摸着石头过河”,当时负责对接的长亮科技技术工程师李工回忆道:“在动工建设之前,我们耗费大量的时间与行方进行业务方案和技术框架的设计,一切就绪之后,才开始动工。即便如此,开发过程中也遇到各种难题。由于业界没有可借鉴的经验,在分布式交易开发过程中,我们只能走一步看一步。当时采取的办法是先挑选一笔交易,召集所有的技术人员、项目成员和领导们一起验证,共同分析出需要优化的功能,再进行调优,接着是验证、调优,再验证、再调优……不断重复这些步骤,直到每一处都完成优化改造”。
长亮科技技术工程师 李工
历时近一年,终于在2015年3月,微众银行分布式核心系统成功上线,系统在当时具有众多业界开创性的特色,包括全盘采用Java语言做架构和业务逻辑的开发、全部应用采用分布式架构、实现了交易与核算分离、支持亿级海量用户和高并发交易等,成为我国银行业核心系统分布式的开端。
全面进入分布式时代:传统银行开始布局分布式核心
微众银行成为国内中小银行体系第一家采用分布式核心系统的银行,这星星之火快速形成了燎原之势,2015年平安银行、南京银行同步启动了分布式核心系统建设,无独有偶,为其提供服务的都是已经有了一次成功吃螃蟹经验的长亮科技。
据负责分布式核心系统建设的长亮科技副总经理魏锋说:“那段日子,对长亮来说压力山大,当时分布式刚刚起步,平安银行和南京银行熟悉分布式的科技人员也不多,要求我们把熟悉分布式的专家都派到自家银行。面对两家大行同期项目对分布式人才的集中需求,我们只能紧急调配参与微众银行分布式核心系统项目建设的原班人马,利用项目前期的需求时间,在工作之余,充分利用晚上、周末的时间,加班加点紧急培训,让大家在最短的时间熟悉分布式开发的方法与技术,快速上手。”
长亮科技副总经理 魏锋
因此2015年底对长亮科技的所有开发人员来说面临的压力前所未有,一来这是两个重量级客户,二来定制的开发任务非常多,三来熟悉的人员又不足。大家只能紧抓每一分每一秒,甚至连口渴了都顾不上喝水继续干,这种状态一直持续到2016年1月底,确保了项目的开发任务按时保质保量完成。
2016年10月,平安银行、南京银行分布式核心系统同期上线,上线后分布式核心系统的性能表现完全达到并超越预期要求,给业内考虑更换分布式核心系统的银行吃了两颗定心丸,一时间,银行业换分布式核心的热情高涨。
2019年8月,分布式核心在传统银行领域迎来了一个重大转折点,全国首家采用国产分布式数据库的银行核心系统在张家港农商行成功落地,服务商正是对分布式技术已经驾轻就熟的长亮科技。
在此之前,国产数据库只应用在外围,诸如支付系统、客户关系管理系统、查询系统等,张家港农商行与长亮科技大胆尝试,在分布式核心系统中采用国产数据库,不仅打破了银行对国外数据库产品长期的依赖,也进一步加速了银行核心分布式时代的进程。
上线后的新核心系统有效支撑了数百个外围系统的对接要求,运行平稳、运维高效,取得了良好的应用效果,为银行分布式核心提供了成功的、可复制借鉴的案例,在核心领域掀起新的浪潮,到张家港农商行取经的银行数不胜数,至此银行核心全面进入分布式时代。
分布式技术进阶:首个“微服务+单元化”分布式核心系统落地
从技术视角看,分布式有三种典型的实现方式:分布式事务数据库、数据库中间件、应用架构分布式。张家港农商行采用的是第一种分布式模式,即分布式数据库;第二种中间件分布式,需要依赖成熟稳定的分库分表中间件;第三种应用架构分布式又可以细分为三种,即:微服务架构、单元化架构和“微服务+单元化”架构,微众银行则是采用该单元化架构的模式。
长亮科技研发副总裁张木书认为:单元化作为分布式架构的一种经典实现模式,它与微服务架构结合可以为新一代IT架构带来更多的架构红利,如:无限可伸缩架构,可基于单元水平扩容、微服务弹性伸缩;多中心部署架构,通过单元多中心多活部署,提升容灾能力;灰度发布能力,基于单元灰度、微服务版本灰度,提高版本发布可靠性;故障隔离能力,通过单元故障隔离、微服务故障隔离,降低故障影响范围,提高系统整体可用性。但与此同时也会带来架构的复杂性,包括跨单元分布式事务问题、跨微服务分布式事务问题、服务拆分过细性能问题、跨微服务和跨单元批量调度问题、对业务的侵入和适配改造问题等,在具体项目实施过程中应结合上层的应用场景进行具体分析,实现业技融合。
长亮科技研发副总裁 张木书
凭借对分布式架构的深厚理解,长亮科技积极创新,将这一诞生于互联网头部企业的设计理念引入了银行业,推出了首个“微服务+单元化”架构分布式核心系统。
“微服务+单元化”分布式核心在技术服务层面能够实现灵活部署及无限动态扩容,能够满足客户未来业务爆发式增长的需求;业务层面支持产品快速创新,重新构建金融业务流程,促进以交易驱动的会计核算方式转变为以客户为中心按产品管理的服务模式。
说起这一先进架构的分布式核心的落地契机,也是十分巧合,彼时东莞银行正准备谋求分布式核心转型,在调研了微众银行核心系统后,东莞银行把目光放在了长亮科技身上,那时长亮科技正在进行SunLtts V8的研发,东莞银行经过了解发现SunLtts V8契合业内未来的发展方向,因此下定决心,要换就换“最好的心”。
2020年6月东莞银行新一代核心系统上线,完全满足银行在低成本、高可用、高性能、可快速扩展等多方面的要求,能有效支撑银行高速发展互联网业务,满足海量客户数据与业务爆发式增长的需求,充分验证了“微服务+单元化”架构的先进性。
随着“数字化转型”的广泛开展,作为信息化关键性领域的银行势必要进一步加大对数字化的投入,而广大中小银行更需要能够以较低成本、较高性能完成数字化转型的架构解决方案,“微服务+单元化”的分布式架构应运而生。这一架构模式,从设计到实现都免除了对特定进口产品的依赖,为银行实现高质量、高可靠、高安全的数字化发展奠定了坚实的基础。
从无到有,从单机版到数智化,银行核心系统经历了不同的历史发展阶段,尤其是近十年,科技正不断实现超越,纵观不断演进的银行核心系统的发展史,每一次变革,每一次进阶发展,都离不开技术与创新的推动,但技术发展远不止于此,新一轮的技术发展正在不断更新,未来可期。