写点什么

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

  • 2021-01-08
  • 本文字数:2306 字

    阅读完需:约 8 分钟

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

国产化替代是国内企业 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 编辑根据现场演讲内容进行整理,未经本人确认)


2021-01-08 10:306516
用户头像
万佳 前InfoQ编辑

发布了 677 篇内容, 共 370.0 次阅读, 收获喜欢 1804 次。

关注

评论

发布
暂无评论
发现更多内容

字节跳动移动架构师学习笔记,一文说清!

欢喜学安卓

android 程序员 面试 移动开发

2021年最危险的七大攻击技术,我不信你不知道

网络安全学海

程序员 网络安全 信息安全 漏洞扫描 攻击技术

5分钟速读之Rust权威指南(三十一)线程通信

wzx

rust

同样是初级测试,凭什么他比我薪资高5000块?

程序员阿沐

软件测试 自动化测试

从设计模式看如何提升程序员的工程素养

学无止境的阿奔

Linux 后端 设计模式 C/C++ 服务器

架构实战营 - 模块 7- 作业

请弄脏我的身体

架构实战营

你公司里有不能碰的红线吗?

石云升

法律 职场经验 6月日更

Linux之more命令

入门小站

Linux

持续交付时代,Scrum中还有必要进行 Sprint Review 么?

万事ONES

项目管理 敏捷开发 持续交付 ONES

云算力矿机挖矿系统搭建,Bzz节点挖矿APP源码

跳槽要不要找猎头

SwiftDD

面试

电池战争:“新石油”与中欧分野

脑极体

数字化的三大本质

CECBC

AQS知多少

卢卡多多

AQS 6月日更 锁分析

Spring Cloud Alibaba 优势在哪?未来会如何演进?

Java架构师迁哥

vivo商城促销系统架构设计与实践-概览篇

vivo互联网技术

架构 服务器 商城项目

阿里巴巴6月新作:“Java辟邪剑谱”,看完必让你直呼好家伙!

Java架构师迁哥

数据治理

奔向架构师

大数据 数据架构 数据治理

带老弟做个实时排行榜

程序员鱼皮

Java c++ 大前端 后端 项目实战

浪潮云荣获“2021中国智能运维领导厂商”奖项

常用 Git 命令总结

编程三昧

git 大前端 工具

深度学习在推荐系统中的应用(二十一)

Databri_AI

深度学习 算法 推荐系统

极狐GitLab14.0正式面世!

极狐GitLab

服务频繁出现100毫秒的延迟,原因是什么?

BUG侦探

运维 开发

攻击方式学习之- 拒绝服务(DOS/DDOS/DRDOS)

网络安全学海

网络安全 信息安全 渗透测试

Redis - Cluster - 分布式存储

旺仔大菜包

redis

字节跳动8年老Android面试官经验谈,看完跪了

欢喜学安卓

android 程序员 面试 移动开发

Java后端,想找一份20k以上的工作需要掌握哪些知识?

Java架构师迁哥

区块链服务网络全球首发 将极大降低政务、金融、能源等领域区块链应用成本

CECBC

JavaScript 学习(十二)--- String对象中的模式匹配方法

空城机

JavaScript 大前端 6月日更

币安智能链DAPP系统开发

Geek_23f0c3

DAPP系统开发 #区块链# 币安智能链

“飞行中换引擎”,建行信用卡核心系统的国产化改造_行业深度_万佳_InfoQ精选文章