GMTC全球大前端技术大会(北京站)门票9折特惠截至本周五,点击立减¥480 了解详情
写点什么

微众银行互联网架构首次曝光

2015 年 10 月 29 日

作为中国首家互联网银行,微众背后的软件平台一直都显得高深而神秘。近日,InfoQ 记者采访了微众银行架构师李靖,与他一起探讨了微众银行的自主可控互联网银行架构。本文根据采访整理而成。

受访嘉宾:

李靖,微众银行科技事业部基础架构产品部架构师,全面参与全行 IT 基础架构的规划设计工作,设计并实施了微众银行基于自主可控技术的分布式基础架构。在 ArchSummit 北京 2015 全球架构师峰会上,李靖作为专题讲师将与大家详细探讨微众银行架构实践,敬请期待。

InfoQ:您很长时间工作都是与金融有关,请问金融软件架构在哪方面给您留下了印象深刻?

李靖:其实在金融 IT 领域,我自己还是一个“新人”,不足 10 年的从业经验在行业内还比较“稚嫩”。幸运的是,在职业发展的过程中,机缘巧合的经历了很多很有趣同时也收益无穷的事情。从初入职场时参与 Merrill Lynch 的全球外汇交易系统研发,到回国之后全面接触了国内商业银行的信息化建设。思想的碰撞,让我深刻的认识到在东西方不同文化、科技背景下,银行业不同分支对于信息系统建设的不同思路。印象最深的是:无论国内商业银行还是全球性的投资银行,其 IT 架构的复杂程度都远远超过了其他的行业。这种复杂度不仅仅来自于银行业务需求或 IT 技术本身,更多的是银行这个行业对于 IT 系统全面要求:性能、容量、扩展性、可用性、安全性、可运维性等等。一个无所不能、无所不包的架构,对于任何人都是一种充满着刺激的挑战。

InfoQ:互联网给银行软件架构带来了哪些挑战?

李靖:互联网对于银行架构带来的挑战是颠覆性的。互联网,尤其是移动互联网所带来的客户行为与传统的“线下为主、电子渠道为辅”的模式完全不同。在全面拥抱“互联网+”下的普惠金融模式中,互联网这个不眠不休的无边界的“客服媒介”为银行带来了在 7*24 小时中不间断寻求高质量银行服务的海量用户。五花八门的需求和众口难调的客户体验给微众银行的产品经理们留下一道道难题。与此同时,更加直观的是海量用户将带来不间断的业务请求,并在业务高峰时带来海量的并发。由此,对微众银行的整个 IT 架构而言:能否承载海量交易处理?能否处理并存储海量业务所带来的海量数据?能否从海量数据中提炼更多的价值从而更好的服务海量客户?这些成为了互联网+时代下的普惠金融给银行 IT 部门带来的新的挑战。

InfoQ:今年支付宝光缆被挖断事件给我们什么新的警示?微众在这方面是如何处理的?

李靖:关于同业小伙伴所遭遇到的不幸,个人不便多做评论。一个互联网架构要直接达到金融级的可用性要求本身就是一个很大的挑战。因此,在我们说互联网改变金融的同时,其实互联网架构本身也需要进行提升和优化。这其中最大的差异在于对于“有损服务”以及业务连续性上的差异。在这个方面,微众银行做了非常多的工作。我们的业务连续性已经达到了《信息系统灾难恢复规范 GB/T 20988-2007》最高的等级。最直观对比的一个例子,微众银行每个生产数据中心都配备了 4 条完全采用不同物理路径的光纤接入银行核心骨干网。也就是说,要在相同的时间不同的地点准确的铲 4 下,才能使得微众银行的一个中心失联。而微众银行架构规划设计对于一个数据中心的损失是完全可容忍的。也就是说,即使一个数据中心失联,我们的客户也不会有任何感知。

InfoQ:微众有哪些新的业务形态给架构设计带来困难?跟我们分享一下。

李靖:最直观的挑战就是海量用户所带来的海量交易处理及存储的压力。这个对于整个架构的性能提出了很高的要求。其次,互联网不眠不休的存在着,对于银行架构整体的业务连续性有很高的要求。同时,互联网提供的无限触点,使得业务扩展速度极快,因此架构需要具备很高的扩展能力。而在满足这些互联网特性的同时,还要兼顾银行业对于可用性、故障风险控制以及运营管理规范性上的要求。因此,这是一个融合、冲突、突破的过程。

InfoQ:为何微众银行业这么致力于研发自主可控技术?

李靖:微众银行从创建之初便决定了要致力于研发自主可控技术,做这个决策几乎没有任何犹豫。总结原因,主要有三:1、从宏观的角度,国家政策层面上已经提出了对银行信息系统建设加强自主可控,提升信息安全的要求。2、正如之前问题中介绍的,微众银行所追求的“互联网 + 下的普惠金融”战略使得传统基于商业化解决方案的技术体系基本无法支撑微众的业务。3、微众银行作为一家初创的金融机构,在开业时间和资本金上均有限制。采用传统的技术体系基本无法满足这些限制要求。因此,从一开始我们便走上了自主可控技术之路。

InfoQ:在自主可控技术方面有什么经验可以跟大家分享的?

李靖:关于自主可控技术的细节这里就不细谈了,有兴趣的同学可以关注 ArchSummit 北京 2015 。这里分享一个体会:微众的自主可控技术主要采用的是成熟的开源技术,而开源技术这个大生态经过过去的发展已经很成熟了。在使用开源技术的时候,一个重要的命题是:当你的关键组件采用了开源的技术,代码对所有人可见的时候,如何保证你架构的私密性和安全性?微众的一个做法是,对于关键的组件,例如:底层的虚拟化技术和操作系统、网络安全的组件,我们不会直接采用原生的开源技术。我们会使用经过深度二次开发的开源产品。这个二次开发,有些是依托了腾讯集团的技术力量,有些则是银行自行进行的。这样既保持了技术的可掌控性,也保证了架构的私密性。同时,我们注重相关产品的代码审查和扫描,也会在测试环境对相关产品进行隔离观察。

InfoQ:跟大家透露一些 ArchSummit 北京 2015 上的精彩内容吧。

李靖:在 ArchSummit 大会上,微众银行基于自主可控技术的分布式架构会第一次走到聚光灯前和大家见面,供大家评审。我们会分享架构设计的整个思辨过程,从设计背景到架构理念决策的整个过程。同时,我们也会结合实战案例,分享实施过程中,技术选型中的体验。我们希望能通过我们的介绍,增强大家对于自主可控技术这条道路的信心,也通过我们的分享,让更多的人走进这个领域,推动整个银行业自主可控能力的提升。

InfoQ:最后,关于 ArchSummit 有什么想跟读者说的?

李靖:很荣幸能加入 ArchSummit 这个大家庭,接触到了很多领域中的前辈和领导者,感受到了整个行业的活力。很感谢 ArchSummit 能给我这个机会和大家分享,也希望能从中汲取更多的养分。ArchSummit 是一个充满活力,充满前沿信息,充满实战分享的大平台,也希望更多的人加入进来。更多的分享,更多的参与会使得所有这个家庭中的一份子都变得更高、更快、更强!

2015 年 10 月 29 日 19:0012531

评论

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

2021分享三面阿里:Java面试核心手册+Java电子书+技术笔记+学习视频

比伯

Java 编程 架构 面试 程序人生

JDK源码深度学习!阿里P9架构师终于总结出了这份“源码级”的笔记了

Java架构追梦

Java 源码 架构 jdk 面试

面试官:一年跳槽三次,你是怎么做到的?

程序员一凡

程序员 面试 软件测试 测试工程师

互斥锁 vs 自旋锁

行者AI

互斥

免费ETL批量调度,任务调度,作业调度自动化运维工具Taskctl Web

会飞的鱼

大数据处理 kettle 海豚调度 自动化部署 ETL

牛掰!阿里新产性能优化小册:五角度入手,全新演绎性能优化

程序员小毕

Java 架构 面试 性能优化 高并发

一周信创舆情观察(1.18~1.24)

统小信uos

【并发编程的艺术】内存语义分析:volatile、锁与CAS

程序员架构进阶

Java Java内存模型 28天写作 架构·

一文读懂HTTP协议的昨天,今天与明天

后台技术汇

28天写作

nacos 配置中心自动化运维之namespace坑

Sky彬

nacos

产品利益相关者分析

LT_product_elearning

滴滴开源Logi-KafkaManager 一站式Kafka监控与管控平台

滴滴云

kafak 滴滴开源 监控告警 运维平台

不可忽视的PHP数据精度损失问题

架构精进之路

php 七日更 28天写作

kotlin下载!我们究竟还要学习哪些Android知识?Android岗

欢喜学安卓

android 程序员 面试 移动开发

不满于天天CRUD,奋起直面阿里斩下25K*16offer面经分享!

程序员小毕

Java 架构 面试 分布式 算法

一文告诉你Java日期时间API到底有多烂

YourBatman

LocalDateTime Date JSR310 Calendar

同事有话说:ThreadPoolExecutor是怎么回收线程的

云流

Java 程序员 面试

图解分析:Kafka 生产者客户端工作原理

码农架构

kafka 中间件 消息队列 消息中间件

关注直播 走近滴滴夜莺K8S监控组件

滴滴云

k8s 滴滴技术 监控告警 滴滴夜莺

毫不留情地揭开负载均衡的真面目~

田维常

负载均衡

PostgreSQL使用clickhousedb_fdw访问ClickHouse

PostgreSQLChina

数据库 postgresql 开源 软件

内存数据库解析与主流产品对比(二)

星环科技

数据库

自动化测试现状趋势解读,附带近年自动化测试常用工具

程序员一凡

程序员 软件测试 自动化测试 测试工程师

阿里P8大牛亲自教你!实战讲述Flutter跨平台框架应用,安卓系列学习进阶视频

欢喜学安卓

android 程序员 面试 移动开发

软件测试在不同应用场景中,我们该如何进行测试呢?

程序员一凡

编程 程序员 软件测试 教程 测试环境

听说隔壁班的程序员给女友做了个智能风扇

智能物联实验室

物联网

TcaplusDB常见问题-数据库原理类

TcaplusDB

数据库 nosql 分布式 游戏开发

LeetCode题解:389. 找不同,位运算,JavaScript,详细注释

Lee Chen

算法 LeetCode 前端进阶训练营

【Skeleton】按钮

学习委员

CSS 前端 CSS小技巧 28天写作 纯CSS

内存数据库解析与主流产品对比(一)

星环科技

数据库 大数据

Alibaba最新产物手册宝典:分布式核心原理解析,简直是Java程序员福音!

996小迁

Java 架构 分布式 面试程序人生 面试c

微众银行互联网架构首次曝光-InfoQ