写点什么

如何快速重构万级 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:163165
用户头像
罗燕珊 AI practitioner | Tech media

发布了 550 篇内容, 共 420.6 次阅读, 收获喜欢 861 次。

关注

评论

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

2021最新腾讯面经分享:Java面试核心点/技术笔记/学习视频(春招必备)

比伯

Java 编程 程序员 架构 面试

调整好心态

Nydia

RPA助力证券行业高质量发展

Jason Tien

微服务 RPA 金融科技 证券 自动化平台

并行编程首篇

shun123456789

开发语言 基础知识

BGP的那些事

c++编程思路

张鹤羽

28天写作 3月日更

每日打卡1:删除字符串中的所有相邻重复项

有梦想的tester

七日更 3月日更

Elasticsearch 定制 Dynamic Mapping 策略

escray

elastic 28天写作 死磕Elasticsearch 60天通过Elastic认证考试 3月日更

Python 关键字

HoneyMoose

“数”看2021年“3•15征集令”

百分点大数据团队

为什么 HashMap 的加载因子是0.75?我研究源码发现一个重大秘密。。。

程序员 架构 面试

SICP 习题解答 1.11

十元

B端产品经理自我认知

lenka

3月日更

职场的信任危机

ES_her0

28天写作 3月日更

鬼才|闲鱼PMO的年终总结

闲鱼技术

容器 & 服务:Kubernetes构件及Deployment操作

程序员架构进阶

Docker Kubernetes 容器 28天写作 3月日更

Wireshark数据包分析学习笔记Day6

穿过生命散发芬芳

Wireshark 数据包分析 3月日更

常见 git 需求整理(持续更新中)

blueju

git 大前端 工具 npm

熬夜重构了IDEA插件Toolkit(整合程序员常用的工具箱),更加便捷

Silently9527

Java 程序员 idea插件

redis工作原理(下)

Sakura

28天写作 3月日更 21天挑战

算法攻关 - 重建二叉树 (O(n))_0105

小诚信驿站

刘晓成 小诚信驿站 28天写作 算法攻关 重建二叉树

(28DW-S8-Day18) 可插拔式知识

mtfelix

28天写作

话说 AQS

木子的昼夜

Java AQS

神了!华为18级专家把困扰我多年的操作系统与网络,讲明白了

程序员 架构 计算机

第9周课后练习-性能优化三

潘涛

架构师训练营 4 期

RabbitMQ集群简介

Kylin

读书笔记 RabbitMQ 消息队列 3月日更 集群简介

正则表达式.05 - 匹配模式

insight

正则表达式 3月日更

初学者思维 - 找到解决问题的新方法

石云升

程序员 思维模型 28天写作 3月日更 初学者思维

翻译:《实用的Python编程》04_03_Special_methods

codists

Python

Vue源码学习 | 4个实用的javascript技巧

devpoint

Vue vuejs stringify

Spring Boot工程结构

韩斌

Spring Boot

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