猜你喜欢
商业银行分布式架构实践

商业银行分布式架构实践

书籍作者:牛新庄 ISBN:9787302536086
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:9705
创建日期:2021-02-14 发布日期:2021-02-14
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介

《商业银行分布式架构实践》从理念、技术、工程实践、管理等方面系统介绍民生银行分布式架构转型实践的先进经验。首先讲述商业银行进行分布式架构转型的必要性。接着分析适合金融行业的分布式 架构设计模式,讨论关键技术,如服务治理、分布式数据访问、分布式事务、消息中心、分 布式存储等,并重点介绍对于保证银行业务连续性至关重要的高可用和灾备方案。此后列出 组织架构建设、分布式架构转型改造的要点。最后结合三个民生银行分布式系统建设实例 ( 核 心账务系统、支付结算系统、线上贷款系统 ),详述实施分布式架构改造的过程。

作者简介

牛新庄,国内优秀数据架构与IT治理专家,现任中国民生银行总行信息科技部总经理、民生科技有限公司董事长兼总经理,国务院“互联网+”行动专家咨询委员会委员,工业和信息化部人工智能专家,银保监会信息科技发展与风险管理专家,中央企业网络安全与信息化服务共享联盟首批专家,浙江大学软件学院兼职教授,对外经济贸易大学国际商学院客座教授,北京交通大学软件学院兼职教授。早年曾担任建设银行总行、青岛海尔、中信银行、山东农信等国内大型企业的专家顾问。牛新庄博士已出版《循序渐进DB2》《DB2数据库性能调整和优化》《深入解析DB2》《DB2高级管理、系统设计与诊断案例》等多本专著,获得二十余项国际认证,多次获得人民银行科技发展奖及银保监会科技成果奖项。

编辑推荐

分享金融级分布式技术平台实践经验

引领商业银行金融科技架构转型浪潮


见证商业银行金融科技领域重要突破

多维度深入剖析民生银行分布式架构转型成功经验

助力中国金融业基础IT架构转型

提升金融核心技术自主掌控能力


前言

前 言


当前中国的银行业已经进入关键的变革期,随着利率市场化、金融脱媒、技术脱媒、移动互联网技术的快速发展,商业银行必然向“轻型银行”“服务银行”“数据银行”转型。以授信和资金供给为主的粗线条金融服务方式已经在激烈的市场竞争中举步维艰,银行服务的交易化、场景化、科技化、智慧化、黏性化将是商业银行服务升级的主要方向。

同时随着以互联网为代表的新一代信息技术蓬勃发展,“互联网金融”正在对传统的银行业发起挑战和冲击。“互联网”深度挖掘了中国巨大的市场体量的同时也深刻改变着各行各业的服务模式。作为市场经济命脉的银行业,一方面服务范围得到了极大延伸和扩展,另一方面也面临着互联网级别的海量客户、海量服务、海量数据的巨大压力和挑战。

更重要的是我们要深刻认识到“自主掌控关键核心技术”的重要性。金融信息系统作为全国性的关键基础设施,关系国计民生,关系国家安全,信息系统自主化掌控任重道远。

从自身业务发展,到行业竞争,再到国内外形势,都要求银行业做出改变,这也是FinTech技术在银行业呈现出星火燎原之势的原因所在。作为基座的信息系统架构已经发展到一个拐点,分布式架构的发展和应用部署将成为银行等金融机构信息化变革的重要发力点,为银行支撑海量交易、增强自主掌控提供重要契机。

移动互联网的迅猛发展已经为应用开源分布式架构方面积累了大量实践经验,开源技术与软件日益成熟,分布式微服务架构已成为互联网企业的主流技术。国内金融科技人才储备丰富,已具备科技自主创新的基础,银行信息系统分布式架构转型可以说已经“万事俱备”。在此背景下,民生银行认真布局,坚持自主研发,按照“分步实施、小步快走”的建设策略,采取局部探索、核心试点、关键系统改造和全面推广这四个步骤逐步推进分布式架构在行内的实施。目前民生银行零售信贷体系已完成分布式改造, 分布式支付通道系统已正式投产。直销银行电子账户、凭证和现钞模块均已迁入分布式核心系统。我们计划用三年时间完成对传统核心、支付体系、生产运维体系、安全体系、大数据体系这五个领域的分布式架构转型部署。

《商业银行分布式架构实践》结合民生银行分布式架构转型推广的具体实践,详细阐述商业银行科技转型,提出分布式架构转型的必要性,介绍分布式系统建设的理念,分享针对金融行业的分布式架构设计模式。对保证银行业务连续性至关重要的高可用和灾备方案会单列一章进行介绍。除技术层面外,《商业银行分布式架构实践》还分享民生银行内部的一些经验和实践,如开发运行效能建设、组织架构建设、分布式架构转型改造要点与实施阶段划分。最后结合三个民生银行分布式系统建设实例( 分布式核心账户系统、分布式支付结算系统、分布式线上贷款系统) 详细介绍银行核心系统分布式架构改造项目落地的过程。

我们身处一个大变革时代,面对的是复杂多变的内外部环境。民生银行提前布局,在系统架构分布式化转型中取得了一些进展。未来, 我们希望与广大金融同业携手,攻坚克难,持续推动分布式架构在金融行业的发展落地,推进软件国产化、自主化工作向纵深发展,为捍卫我国金融稳定、提升我国金融创新能力不懈奋斗。

最后感谢《商业银行分布式架构实践》写作过程中给予我无私帮助的以下同事和朋友:李晓东、翟宾、袁春光、靳军、孙江涛、黎育龙、张立、肖宏、黄鹏程、何鹏、朱彬、徐春阳、何佳佳、刘元勋、尹家彬。



目录

目 录


第1章 商业银行科技转型思考与探索 1

1.1 当前时代背景下的银行业务特性 2

1.2 新业态下银行科技特性与架构转型思考 6

1.2.1 新时代背景下银行信息科技特性 7

1.2.2 银行科技架构转型思考 9

1.3 分布式架构的选择 12

第2章 分布式系统建设理念 17

2.1 分布式架构 17

2.2 分布式架构转型理念 19

2.3 分布式架构转型中的挑战 21

2.3.1 “分”的挑战 21

2.3.2 “合”的挑战 22

2.4 分布式经典理论 24

2.4.1 ACID理论 25

2.4.2 CAP理论 26

2.4.3 BASE理论 28

第3章 分布式架构设计模式 31

3.1 分布式应用设计 31

3.1.1 分布式应用设计原则 31

3.1.2 分布式应用服务设计在金融行业中面临的问题和挑战 32

3.1.3 分布式应用服务实施建议 33

3.2 应用设计模式 38

3.2.1 通道型应用 39

3.2.2 前置网关型应用 41

3.2.3 读写分离产品型应用(包括数据型应用) 42

3.2.4 分库分表型应用 44

3.2.5 分区多活产品型应用 47

第4章 关键技术能力建设 51

4.1 云平台(基础设施弹性) 51

4.1.1 发现云计算 51

4.1.2 认识云计算 53

4.1.3 云计算和分布式技术 56

4.1.4 金融行业遇到云计算 57

4.1.5 金融行业IaaS建设探索 60

4.1.6 金融行业PaaS参考架构 62

4.1.7 云计算技术未来展望 64

4.2 服务治理 65

4.2.1 服务治理技术概述 65

4.2.2 金融行业服务治理实施策略 78

4.3 分布式数据访问 86

4.3.1 选择分布式数据库方案 87

4.3.2 金融核心数据分库分表拆分方案 88

4.3.3 分库分表中间件 90

4.3.4 数据扩容 98

4.3.5 结语 100

4.4 分布式事务 101

4.4.1 单库事务 101

4.4.2 最大努力一阶段提交(Best Effort 1PC) 102

4.4.3 XA两阶段提交 103

4.5 消息中心 104

4.5.1 应用场景和解决问题 105

4.5.2 实现方式及通用设计 106

4.5.3 消息中心实践 108

4.5.4 应用使用要点和规范 112

4.5.5 典型开源技术及对比 114

4.6 全局序列号生成器 116

4.6.1 全局序列生成器技术架构 116

4.6.2 全局序列号生成器服务接口设计 118

4.7 缓存 118

4.7.1 缓存介绍 118

4.7.2 本地缓存 120

4.7.3 应用级缓存 122

4.7.4 分布式缓存 129

4.7.5 探索和实践 129

4.7.6 总结和展望 131

4.8 分布式存储 131

4.8.1 分布式存储介绍 131

4.8.2 分布式存储在金融行业的前景 132

4.8.3 分布式存储发展方向 134

4.8.4 分布式存储部署使用原则 135

4.8.5 分布式存储部署架构 136

4.9 大数据技术 137

4.9.1 大数据概述 137

4.9.2 银行数据架构设计 140

4.9.3 结语 152

第5章 高可用、同城双活与灾备 155

5.1 分布式多活技术架构 155

5.1.1 分布式架构双活设计原则 155

5.1.2 分区多活架构设计 156

5.2 数据库高可用与灾备技术 158

5.2.1 数据库高可用性选型 158

5.2.2 MySQL高可用方案的具体实现 159

5.2.3 MySQL的同城与容灾方案 160

5.3 小结 164

第6章 开发运行效能建设 165

6.1 挑战、背景与目标 165

6.1.1 机遇与挑战 165

6.1.2 银行信息科技的发展趋势 166

6.1.3 分布式架构下的特点与难题 167

6.1.4 目标 167

6.2 DevOps体系 169

6.3 DevOps流程体系 174

6.4 DevOps整体设计思路 175

6.4.1 金融行业流程体系现状 175

6.4.2 DevOps整体设计思路 176

6.5 DevOps体系建设 178

6.5.1 快速类流程体系整体思路 178

6.5.2 传统类流程体系整体思路 180

6.6 DevOps核心领域建设 180

6.6.1 需求条目化管理 180

6.6.2 分支管理 181

6.6.3 持续集成 182

6.6.4 持续交付 184

6.7 运维体系化建设 187

6.7.1 分布式环境下运维的特点与挑战 187

6.7.2 分布式运维支撑体系 187

第7章 组织架构建设 193

7.1 文化 193

7.1.1 组织意识 193

7.1.2 风险意识 194

7.1.3 规范意识 195

7.1.4 工具意识 196

7.1.5 运营意识 197

7.2 组织结构 198

7.3 制度建设 203

7.3.1 关于制度制定方面 203

7.3.2 关于工程作业以及制度执行方面 205

7.4 人才 205

7.4.1 专业化 206

7.4.2 多元化 206

7.4.3 积累和传承 207

7.4.4 外部合作 208

7.5 小结 208

第8章 银行分布式架构改造要点与实施阶段划分 209

8.1 金融行业分布式架构改造需求点 209

8.1.1 吞吐量与性能需求 209

8.1.2 系统可用性需求 210

8.1.3 数据一致性需求 210

8.1.4 容灾与备份需求 210

8.1.5 系统安全性需求 211

8.1.6 运维自动化需求 211

8.2 分布式架构分层解决方案及实施阶段划分 212

8.3 分布式金融架构愿景 215

第9章 大型商业银行分布式系统建设实例 219

9.1 大型商业银行分布式核心账务系统 219

9.1.1 中国民生银行分布式核心系统建设背景与历程 219

9.1.2 构建过程 221

9.1.3 项目成果 228

9.1.4 未来展望 230

9.2 大型商业银行分布式支付结算系统 230

9.2.1 分布式支付结算系统建设项目背景 230

9.2.2 分布式支付结算系统建设的意义 231

9.2.3 支付结算系统面对的交易环境 231

9.2.4 分布式支付结算系统建设方案 232

9.2.5 结语 246

9.3 大型商业银行分布式线上贷款系统 247

9.3.1 背景与概述 247

9.3.2 贷款领域模型设计实现 247

9.3.3 分布式贷款系统的架构设计 252

9.3.4 批处理方案设计 257

9.3.5 分布式改造的数据迁移方案 261

9.3.6 日常运维工具介绍 264

9.3.7 结语 265