微信号:infoqchina

介绍:有内容的技术社区媒体

赵海峰:大数据决定互联网金融未来

2014-11-24 18:27 赵海峰


互联网金融持续火热,阿狸巴巴、百度、京东等巨头均进入金融行业,这些创新的金融产品在给消费者们带来惊喜的同时,也在推动着传统金融行业的变革。而互联网金融市场的竞争也日趋白热化,从一开始互联网金融就带有互联网的属性,也就是说技术将会直接影响产品以及商业模式。目前各大金融公司都在探索如何将大数据、云计算等技术与已有业务结合,期望可以在保证平台安全、稳定的同时可以提供更加精准的服务。InfoQ此次专访了京东金融的架构师赵海峰,另外作为ArchSummit北京2014大会《互联网金融》专题的讲师,赵海峰将会站在电商平台的角度上剖析互联网金融系统架构实践。


InfoQ:据了解,从2009年开始您就一直负责京东交易系统的架构和研发工作,能简单介绍下京东的交易系统么?架构方面主要经历了哪些演进?


赵海峰:京东交易系统主要经历了5个发展阶段。但限于篇幅,我在这里只做简单概述。有兴趣可以参考京东出版的技术类书籍《京东技术解密》,我在第十五章详细的描述了后三个阶段的演化历史。


第一阶段:集中式系统,这一阶段的特点是业务简单,技术简单,以集中式系统为主。但是由于简单、集中式的系统,难以支撑订单量的成倍增长,以及日益复杂的业务需求,所以以08年的封闭开发为契机,京东开始技术转型。


第二阶段: worker时代,这一阶段的特点是worker简单、灵活,开发快速,适应了当时业务的快速发展;但woker不宜维护和统一管理,可移植性差。worker时代顶住了每年618订单的成倍增长,快速适应甚至推动了业务发展(例如单品类向多品类跨越、全国发货模型的实施),10年图书促销事件,暴露了当时京东技术上的不足,但也成为京东技术升级的契机。


第三阶段:SOA时代开始,特点是简单服务化,可移植性强,业务解耦,各系统专注于自己的功能优化和性能优化;SOA的深度和广度不够彻底,当时的数据一致性(例如SQLServer复制延迟),数据库写入单点问题等是京东的几大技术顽疾。从09年开始,五大业务中间件逐一建立,开启京东SOA的先河。11年的封闭开发,完成了交易系统的架构升级:.net转型Java;交易系统服务化、多点写入和跨机房容灾等等。


第四阶段:SOA深化,这个阶段的特点是引入并扩展开源框架;对海量的服务进行治理和流程编排;通过事件触发机制, 驱动业务流程,降低数据延迟;提升系统性能等等。211限时达项目,重构了订单生产流程,将整个生产过程从30分钟缩短到10秒以内,根除了数据复制延迟问题;SOP合单项目,改变了交易系统、生产系统、财务系统等的交互方式,将服务事件化、流程化,可管理、可编排,为后来更复杂的订单业务提供了强大的技术支撑。


第五阶段:京东云时代,这个阶段的特点是云计算、虚拟化、大数据。云盘、JFS、UMP、统一日志等等优秀产品应运而生,并在各大系统普及;不但为业务系统提供了更强大的业务支撑,而且为技术系统的量化运营提供了依据。


InfoQ:为什么选择加入京东金融?京东金融目前是怎么样的一个规模?


赵海峰:我之所以离开京东交易平台部,加入京东金融有以下几个原因:


1,2013年之后,京东交易系统的基础架构已经日益成熟,足以支撑未来几年的交易量和新业务的爆炸式增长;从技术上来说,已经没什么大的挑战。一个例证就是:从08年起,每到618和双十一这两个购物狂欢节的当天,研发作战指挥部就灯火通明、场面异常火爆;而到13年后,这样的火爆场面已经不复存在,只有零零星星的几个人在监控系统。从以前紧张火爆的现场指挥,到后来的悠然观测,确实非常自豪和满足;但也有几分落寂。


2,我非常看好互联网金融,金融在人们经济生活中处于核心的地位。一旦金融被互联网化,整个世界将为之改变。然而大的机遇必然面临大的挑战,而这正是我所期待的!目前京东金融处于蓬勃发展期,拥有基金、保险、理财、贷款、支付、众筹等各种互联网金融服务以及京东白条、京东小金库、京小贷等多个金融产品,并在不断拓展中。就像09年的京东电商,今天的京东金融或许还很弱小,但明天的京东金融将无比强大!


InfoQ:京东金融这块的业务更为复杂吧,能谈谈京东金融是如何保证系统的可靠性的么?


赵海峰:京东金融和京东电商的复杂维度是不同的(电商业务牵扯更广,包括信息流、资金流、物流;以及交易、支付、生产、仓储、配送、财务等各个环节的生态圈;而金融业务中资本运作的深度,是电商业务无法比拟的)。


在保证系统的可靠性上,京东金融借鉴了很多电商系统的经验:前端的CDN、缓存、负载均衡,到应用层的分布式部署、容灾;再到数据层的读写分离、多点写入、分库分表等等。SOA理论中的服务多层级划分、流程编排等,在金融系统中更有用武之地。将一些基础功能抽象成基础服务,进而构建出核心服务和复杂应用,就像搭积木一样。这样在迅速扩展新业务的同时,仍能保证系统的稳定性。


InfoQ:大数据决定互联网金融未来,京东金融是怎么用好现有的这些大数据的?


赵海峰:目前京东金融在各个产品线上,大量采用大数据的相关技术。例如:京东白条的营销推广、额度授信;刚刚上线的京小贷的贷前、贷中、贷后管理;金融平台的风险报警系统等等。通过数据的采集、分析、决策、实施,再到新数据的采集,如此循环往复,来分析用户行为、资金风险、信用评级等,达到最优的用户体验、最低的风险和成本,以及资本配置的最优化——而这正是金融的最终目标。


InfoQ:如何在快速迭代开发新功能时,保证系统的准确性和可靠性?


赵海峰: SOA理论中的服务编排思想,更适合于金融系统。从复杂的业务中,抽象出基础服务组件。这些基础组件通用并且经历很多考验,非常稳定可靠,可以直接使用,不需重新开发,这样不仅缩短了开发周期,而且降低了系统风险。通过流程引擎可对这些基础组件进行流程编排,组装成更复杂的应用,就像是搭积木一样,从而达到快速迭代开发的目的,又能保障系统的准确性和可靠性。同时还可以在系统中加一个独立的角色:质量检查员。质量检查员对每个关键应用进行业务检查,一旦出现问题,系统自动做出处理。这个系统是独立的,从而避免很多金融系统风险。



————我是一条分割线————


ArchSummit北京2014解读“双11”背后淘宝、京东、一号店的技术支撑。年末的技术盛宴,CTO与架构师的大Party。11月30日前报名享受9折优惠,点击“阅读原文”了解详情



 
InfoQ 更多文章 Facebook如何实现PB级别数据库自动化备份 学术派Google软件工程师Matt Welsh谈移动开发趋势 Spotify为什么要使用一些“无聊”的技术? 妹纸们放假了,汉纸们做啥? 大多数重构可以避免
猜您喜欢 一份Docker的反方辩论——我还是用Heroku好了 平安金融科技移动技术周报(第八期) 史上最全的python渗透测试工具合集 Bugtags 创业一年总结 寻星之旅 III —— 校园宣讲行程预告