写点什么

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

发布了 585 篇内容, 共 455.1 次阅读, 收获喜欢 873 次。

关注

评论

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

rodert单排学习redis进阶【白银一】

JavaPub

Java nosql redis

【非原创】微服务设计

Axe

架构师训练营第四周

Melo

极客大学架构师训练营 框架开发 模式与重构 JUnit、Spring、Hive核心源码解析 第6课

John(易筋)

spring 极客时间 极客大学 极客大学架构师训练营 JUnit

手写单例模式

yupi

windows使用docker运行mysql等工具(二)安装运行mysql

Java旅途

MySQL Docker

面向对象设计模式课程小结

梅子黄时雨

极客大学架构师训练营

Zookeeper的数据剖析

tunsuy

zookeeper 日志分析 事务 快照 数据恢复

极客大学架构师训练营 框架开发 第三次作业

John(易筋)

极客时间 设计模式 极客大学 极客大学架构师训练营 框架开发

第三周作业

晨光

架构师训练营 第三周 学习总结

RZC

组合设计模式编码&手写单例模式

吴建中

极客大学架构师训练营

极客大学架构师训练营 系统架构 第7课 听课总结

John(易筋)

极客时间 系统架构 高并发 极客大学 极客大学架构师训练营

产品失败了,产品经理要不要承担责任?

涛哥 数字产品和业务架构

产品经理

架构师训练营第三周作业和小记

tuuezzy

架构师 极客大学架构师训练营

良心推荐 | LeetCode(力扣),算法、数据结构的学习良伴

YoungZY

算法

windows使用docker运行mysql等工具(一)windows安装docker

Java旅途

MySQL Docker

一个汉字占几个字节你真的记住了吗?

Java旅途

[架构师训练营] Week01 -学习总结

谭方敏

架构师训练营 第三周 命题作业

RZC

Zookeeper通信协议详解

tunsuy

zookeeper TCP/IP 通信协议

让你眼前一亮的 10 大 TS 项目

阿宝哥

Java typescript 开源 大前端 Web

Zookeeper集群模式启动

tunsuy

zookeeper 源码分析 socket 分布式集群

区块链改变数字营销与广告市场

CECBC

区块链技术 广告业 精准投放 去中介 公开透明

第三周总结

晨光

第三周手写单例模式(饿汉模式)

吴建中

极客大学架构师训练营

太赞了!一份适合程序员的精选面试题清单。

JackTian

GitHub 开源 编程 程序员 面试

Oracle SQL调优系列之看懂执行计划explain

Nicky.Ma

sql

组合模式应用

yupi

架构师是怎样炼成的-3-2-设计模式

闷骚程序员

第三周-设计模式-学习总结

吴建中

极客大学架构师训练营

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