首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

“飞行中换引擎”,建行信用卡核心系统的国产化改造

国产化替代是国内企业 IT 变革的重要使命和议题。2020 年 12 月 25 日,建信金融科技信用卡及开放银行负责人彭云在 openEuler Summit 2020 会议上发表了《“飞行中换引擎”,建行信用卡核心系统创新实践》的主题演讲,分享了建行信用卡核心系统的国产化之旅。

演讲实录如下

众所周知,一个生态的繁荣离不开“产、学、研、用”四方面的发力。

我比较笃信随机性对世界的影响,软件生态这些年一直走的是演化的路。自上而下的规划和指令可能不如自下而上的试错、创新对生态的繁荣和发展更为有利。

从一个用户角度,我会分享建信金融科技为建行信用卡核心业务系统做一个应用国产化软硬件平台的实践。

建行信用卡核心业务系统的特点

最初,建信金融科技是建行的研发部门。作为一个国有大行,建行的核心业务系统现在主要由建信金融科技的各个事业群负责研发。

虽然,现在很多业务都已经搬到线上,但我先花点时间介绍一下这个业务的特点。

首先,客户基数特别大。与对公业务不一样,作为对私业务,它需要面向超过 1 亿用户提供 7X24 小时或 365x24 小时的服务。所以,它对业务一致性的要求是非常高的。并且,信用卡业务也是银行公认的最复杂的业务之一。

大家使用信用卡,有查询、刷卡、还款等,大家可能还知道信用卡业务不仅涉及还款,还有利息费用的计算,包括什么时间还、是否免息、延期费用等等。

这些对业务的一致性要求很高,并且对系统运行的稳定性要求也很高。有些过程是不可逆的,如果一旦发生错误,回滚是一个解决方案。但是,回滚的时间窗口非常短,不像银行自己有灾备,如果出现问题,切到备用系统就可以了。

想象一下,如果所有系统使用的平台都不可靠,不管是分布式还是集中式,在比较致命的错误面前都会面临很大的业务风险。这对一个国有大行是不可接受的。

业务规模方面,无论是客户数量和信贷规模,包括不良率等核心指标上,建行在整个业界排名第一。并且,所有业务指标在六大国有银行里也是排名第一。

这些年在软硬件平台演进之路上,我们做过多次选择。我们的硬件平台、软件平台的选择往往不是一个规划的结果。20 年前,没有人知道现在金融银行业的硬件软件平台使用什么技术栈。同样,往后看二十年,也很难看清楚。

现在,我们为了 openEuler 生态的演进齐聚一堂,在一起往前走,在试错、创新的过程中,用大体量的用户反过来推动基础硬件和基础软件的完善,推动这个平台迭代和优化,让它更具有生命力。

建行软硬件平台的发展历程

第一张信用卡发出来,那是 2002 年。那时,用的是 IBM Mainframe(大型机),操作系统是 ZOS,它是集中式的平台,它的特点表现为资源很集约,跑一个业务可能要占一个机房,很多服务器堆在若干个机架上。它只有一个 BOX,像双门冰箱那么大,里面有 CPU、主板和内存,磁盘挂在外面。当时,其可扩展性比较差。在发展过程中,我们遇到的计算瓶颈来自于这个 BOX 能插的 CPU 的核数非常有限,因此最终的计算能力也很有限。

随着业务的发展,我们需要扩展,怎么办?

那也是分布式计算开始的年代,IBM 自己也开始走出这一步,所以发明了并行耦合体的东西,叫 sysplex,保证数据一致性耦合处理的机制。2018 年,在回顾这个市场时,我们发现一个惊人数据:2018 年,全球 95%的金融业、航空业、核能等这些关系到国计民生重要经济命脉的行业,它们的核心主机还是跑在 IBM 这个平台上。

这样的背景下,我们走出很重要的一步。现在,作为用户,最深切的感受就是我们需要用的软硬件平台越来越复杂。为了使用分布式,我们的技术栈越来越复杂,模块设计也越来越复杂。

上图左边是基于分布式,底层是 X86;右边还有一部分,还是在主机上,我们经历了向鲲鹏迁移的这样一个过程。

为什么要这么做?前面提到我们的业务量非常大,是金融业务,是对私业务,面向 1 亿多客户提供服务。所以,我们必须做到一件事,迁移必须要非常平稳。

我们用了一种并轨运行的方式,用大机+X86 并行的机制。到 2020 年,我们做了一件事,这个项目也是工信部“核高基项目”,简称核心电子器件、高端通用芯片及基础软件产品,它代表了中国 IT 人的一种情怀和使命,即把国产硬件平台和软件平台放到金融领域做的应用。我们也有幸作为金融领域唯一的参与者来做了这件事。

现在,我们的信用卡核心系统已经运行在两个平台上,是在并轨运行,其中一部分基于鲲鹏平台,用的是麒麟 A10,麒麟操作系统内核是 openEuler。当时做了切换,技术栈有一个变化,同时,用了飞腾服务器,以及用了华为高斯数据库,这在业界也是一个创举,也会引领产业化的道路。

国产化成效

对于实时的金融业务来说,交易响应时间是比较有代表性的指标。我们用了鲲鹏+openEuler 技术栈之后的成效,上图标黄用的是麒麟+高斯的技术栈,标蓝是传统的,原来基于 X86 的技术栈。在硬件水平稍有优势的情况下,麒麟技术栈交易响应时间有比较显著的提高,大概提高 13%左右。综合来看,稳定性、高可用性还是不错的。

当然,在生产系统还要经历更长时间的验证。换一个视角,我们虽然只是使用者,但是某种意义上,我们也是生态发展的先头部队,属于前锋。

一个生态得以繁荣往往来自于这些用户从使用的角度,从一线的角度反馈到底哪里有问题、有哪些值得改进的地方。国外技术平台在进入我们国家,进入金融行业的过程中,最开始也不是一帆风顺,也面临着各种各样的考验,恰恰中国有着人口红利的巨大市场,依靠这些数以亿计的用户给它提供实验室完全没办法拥有的样本才能一路走到今天。

只要我们选对了路,我相信这个生态一定会越来越繁荣。我们就走在这个一条演进之路上。作为一名金融科技人士,作为一个中国的 IT 人,我觉得非常有幸参与到国产化软硬件平台的产业之路上。

(以上内容由 InfoQ 编辑根据现场演讲内容进行整理,未经本人确认)

  • 发表于:
  • 本文为 InfoQ 中文站特供稿件
  • 首发地址https://www.infoq.cn/article/cy8LRmvfX7LckNPhdRe4
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券