HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

如何快速重构万级 TPS 银行交易核心应用

  • 2021-04-28
  • 本文字数:1619 字

    阅读完需:约 5 分钟

如何快速重构万级TPS银行交易核心应用

传统银行业务系统代码臃肿、模块颗粒大、开发效率低、新业务,新功能上线周期长。随着互联网金融创新日出,业务量迅速提升,当前 IT 技术架构面临极大压力和风险。银行主动实施架构转型,面向互联网场景的主要信息系统迁移至微服务架构的云计算平台是大势所趋。


4 月 25 日,在华为开发者大会 2021(Cloud)期间,深圳海付移通科技有限公司项目开发中心总经理胡军分享了主题为《基于华为云 构建万级 TPS 银行核心应用》的演讲。


畅销书作家、著名金融机构资深顾问布莱特·金(Brett King)根据银行的发展历程,把银行分为 4 个阶段:1.0 时代银行服务离不开物理网点,客户一定要到银行里面,银行的人员提供服务是全手动操作;2.0 时代银行开始引入计算机处理业务,通过 ATM、POS、网银,银行服务渠道得以被优化;3.0 移动支付阶段,通过智能手机,客户可以在任何时间、地点操作现金以外的业务;2017 年,开始进入银行 4.0,这时候银行开始引入一些新的技术,像 AI、AR/VR、大数据、区块链等,让银行的服务无处不在,不依附某个具体金融产品。


胡军表示,如今我们正处在 3.0 向 4.0 过度阶段。金融系统上云,底层基础设施云化是核心技术架构的演进趋势。


银行核心系统技术架构演进之路


胡军根据自己的一些经历,把银行核心系统技术架构总结成几个阶段趋势:最开始是大型机架构,接着是小型机架构、X86 架构,随着芯片性能越来越强大,后来出现了虚拟化架构(把计算机虚拟成一个资源池,通过资源池里的机器分配资源),再后面是容器化架构(Docker)、Cloud Native 架构(Cloud Native 阶段存在一个问题,应用和做服务治理的软件混合到一块,当底层的服务框架做升级改造之后,整个服务系统都要做重新的升级,对开发的速度和发布速度会有影响),现在则是 Service Mesh 架构阶段。


随着 ICT 技术不断进步,推动应用架构不断演进,应用架构经历了单体架构、3 层架构、垂直分层架构、SOA 架构和微服务架构等阶段。


近几年用得最多的是微服务,微服务架构的优点是可以把一个大的系统拆分成无数个小系统,让系统的问题变得简单化。利于团队内部做分工,也降低了新人学习的门槛,并且微服务架构的扩展性非常强。

从目前的情况来看,不管是互联网金融还是银行核心系统,微服务架构是当前被广泛采用的应用架构。

互联网核心架构


近几年第三方支付发展迅猛,银行的业务越来越难以去开展。客户首先是通过第三方支付来做业务,另外银行的业务的经营模式也变了,以前是银行等客户来上门,现在更多的是说银行要跟产业联盟,来做合作去达成共赢。


银行传统的核心不能满足新的互联网业务的发展需求。现在银行一般都会做双核驱动架构,一个是传统的老的核心,处理柜面业务,另外是互联网核心系统,基于互联网去开展业务。


新的互联网核心面临着高安全、高可靠、高性能和低成本等方面的技术挑战。



胡军展示了目前做的互联网核心系统的总体架构设计,基于云的 X86 架构实现,采用微服务架构。



互联网核心应用架构是分层架构,整个系统跑在华为云 K8S 上面。



整体部署架构是基于双核架构,和传统银行的两地三中心有所不同。AZ1 和 AZ2 同时对外提供服务,通过 DNS 做负载均衡。



使用到的华为技术组件关键特性


胡军介绍了搭建互联网核心系统时使用到的华为技术组件,包括 DTM、Kafka、集成 DCS 分布式缓存组件等等。


DTM 是分布式交易管理系统。华为 DTM 具备高可靠分布式事务处理能力,跨微服务事务、跨库事务管理、支持多数据源、非侵入式事务、TCC 事务、事务监控、高 TPS 事务处理能力及数据分析等功能场景,满足企业核心业务数据(如交易数据)的一致性需求。



Kafka 主要用于两个场景,支付成功后的异步处理和买券功能重试。



胡军表示,未来可能会引入华为 ServiceMesh,把跟我们的应用无关的服务治理的软件全部剥离出来,放进 Sidecar 里,对服务的升级和维护都更方便。


据悉,华为微服务框架提供 ServiceMesh 非侵入式方案,支持存量应用渐进式迁移,兼容 SpringCloud 主流开源社区,与业界生态能力互通,不绑定特定开发框架和平台,实现微服务应用的快速构建、实时监控和高可用。

2021-04-28 10:162747
用户头像
罗燕珊 InfoQ中文站编辑

发布了 477 篇内容, 共 313.3 次阅读, 收获喜欢 792 次。

关注

评论

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

Golang 中的并发限制与超时控制

冯骐

并发 超时 Go 语言

用 Go 写一个轻量级的 ldap 测试工具

冯骐

运维 开发 ldap Go 语言

思科设备漏洞 CVE-2018-0171 的快速修复

冯骐

Python 运维 安全 网络 交换机

在主动要求涨工资这事上,不要学我!从第一份工资800开始说起

四猿外

程序员 涨薪 工资 收入 跳槽

LeetCode题解:190. 颠倒二进制位,移动n,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

3 月日更挑战|春日胜景,记录暖心每一天

InfoQ写作社区官方

七日更 3月日更 热门活动

Spring Boot+Maven实现车牌训练、识别系统

不脱发的程序猿

maven Spring Boot 图像处理 28天写作 车牌训练、识别系统

用 Go 写一个轻量级的 ssh 批量操作工具

冯骐

运维 SSH Go 语言

交换机配置的自动备份与变更告警

冯骐

Python 运维 网络 备份 multissh

用 Nginx 的 auth_request 模块集成 LDAP 认证

冯骐

Python nginx 运维 ldap 认证

Pgbouncer最佳实践:系列四

PostgreSQLChina

数据库 postgresql 软件 开源社区

区块链赋能电子合同!构建互联网可信生态整体解决方案

源中瑞-龙先生

failure: repodata/repomd.xml from cloudera-manager: [Errno 256] No more mirrors to try

wjchenge

迄今为止最好用的Flink SQL教程:Flink SQL Cookbook on Zeppelin

Apache Flink

flink

从小厂逆袭快手,我是如何准备面试的

haxianhe

Volcano社区正式发布v1.2.0版本

华为云原生团队

人工智能 开源 AI 云原生

上云三问 | 京东云这次的大促有哪些“不一样”?

京东科技开发者

云主机 云安全

【LeetCode】俄罗斯套娃信封问题Java题解

Albert

算法 LeetCode 28天写作

《精通比特币》学习笔记(第一章)

棉花糖

区块链 读书笔记

面试官:如何用SpringCloud从零设计一个大型电商平台?

Java架构追梦

Java 架构 面试 微服务 SpringCloud

上过云么?一行代码秒上云体验过么?

华为云开发者联盟

华为云 云服务器 devcloud 代码托管

Open-Falcon 中的 LDAP 认证

冯骐

Python 运维 Open-Falcon ldap Go 语言

【经验分享】如何释放企业CMDB价值?——CMDB建设路径浅谈

嘉为蓝鲸

运维自动化 配置中心 CMDB 配置信息 配置管理

量化交易马特机器人(币掌柜/小树/小喜/瓦力)系统开发策略搭建

薇電13242772558

数字货币 量化策略

如何使用Excel表格精准分析PT100温度阻值关系?

不脱发的程序猿

28天写作 PT100 温度采集算法 Excel数据分析 传感器采集

Nginx安装后要做的第一件事

运维研习社

nginx WEB安全

Serverless 极致弹性解构在线游戏行业痛点

阿里巴巴云原生

Serverless 微服务 开发者 云原生 消息中间件

元素XPATH定位点击为什么老失败?

小小娃爱吃甜食

Python 自动化 测试 selenium

简述Electron的发展和应用

anyRTC开发者

WebRTC 跨平台 Electron RTC sdk

拍乐云加盟UCloud优云精选计划,构建云上的美好互动

拍乐云Pano

ucloud 云服务 RTC 拍乐云 白板

智汇华云 | 深入理解Istio中的证书管理

华云数据

如何快速重构万级TPS银行交易核心应用_架构_罗燕珊_InfoQ精选文章