分享

【干货】京东网银在线新支付平台总体架构设计与难点解析

 方珺逸 2015-07-02

?



本文作者:网银在线资深架构师 阮森灵 来源:京东技术学院官方微信

进步就需要变革,完美则需要经常变革--丘吉尔

随着新兴互联网金融业务的迅速崛起,对支付服务提出更高的要求,原有的系统架构很难满足快速变化、日益复杂的新兴业务需求;与此同时,随着用户量、业务量爆发式增长,系统的处理容量和稳定运行也面临考验。要进步,所以我们的平台需要变革,就像作者在开篇送给各位读者那句话

网银在线新支付平台设计的定位是:能快速响应业务发展,架构更清晰合理,服务更稳定可靠,具备可伸缩和扩展能力,支撑未来万亿级以上的交易处理能力,为今后企业发展构建核心竞争力。


新支付平台秉承继承发展、集中统一、安全高效、平滑过渡的四大原则,优先解决业务需求和基础架构建设,下图所示的企业架构框架规划:

业务架构重点要解决的三个问题

1、基础服务抽象与封装,复用公共业务服务;

2、核心系统稳定性需求,解决既快又稳矛盾;

3、提供完整的数据视图,沉淀企业核心数据;


从需求出发,新支付平台业务架构将各产品层的公共交易、支付、账务等沉淀到基础支付平台,积累账户、会员、信用等企业核心数据,形成稳中灵变的总体架构

具体体现在以下这三个方面:


1、逐步建立会员、账务、会计、交易统一体系,抽象和封装公共处理逻辑,形成统一的基础支付平台,降低业务产品的复杂度及重复研发成本;


2、基础支付平台做到安全、稳定、可扩展,为上层业务的快速增长与创新需求提供平台支撑,从架构层面解决互联网金融业务“快”和支付行业“稳”之间的矛盾。


3、沉淀企业核心数据,随着业务数据不断沉淀积累,这些数据是企业持续发展的源动力,同时也为用户和业务提供大数据支撑。


应用架构的技术设计要点

1.建设安全、高可用、灵活的架构;

2.采用开放的面向服务架构;

3.采用基于组件、分层的架构;


新支付平台实现应用系统的层次平台化,进一步提升应用架构合理性。纵向有效建立支付产品层、交易层、支付层、资金层等平台化处理架构,产品层提供灵活多变,快速扩展的能力,适应业务的不断变化。交易层、支付层、资金层及渠道形成基础支付平台作为支付业务关键链路系统,做到安全稳定,易于伸缩等。


实现高可用目标总体策略顺序是:避免发生、降低概率、控制影响和快速恢复四个步骤。采用应用无状态,数据库Failover,交易幂等、业务分级、部署多IDC等等综合措施,共同提高系统可用性。


实现可扩展性目标是按需无限伸缩,总体策略垂直拆分、水平拆分、读写分离和数据复制四个部分,主要措施有采用CDS(Wangyin Client Database Splitter)数据库基础服务,实现数据库的分库分表、读写分离,以及Failover的能力;


使用MSP消息中心为系统间异步处理和系统扩展,以及数据异构复制及广播提供基础服务;缓冲记账、异步记账解决账务的热点账户和账务系统性能问题。

平台架构的实践难点

新支付平台实践大致分为建设和迁移两个阶段,如何与原系统兼容对接,如何不影响业务中断的前提下迁移业务是迁移过程中的主要挑战,特别是在此过程中新的业务需求不断承接。


整个改造工作几乎涉及全站各个大大小小的系统,在新老系统并行期必须满足新老两套体系的兼容,从设计到实施过程时刻考虑业务过渡兼容方案,特别是涉及到财务操作和资金安全,同时还需考虑大促活动期间系统的稳定性。


保障资金安全和稳定运行始终是支付类平台悬在头上的达摩克利斯之剑,明天,京技院将为你详细介绍支付平台从基础体系、资损控制和账务高可用性三个方面,在实践中遇到的难点和解决办法。


请锁定京技院官方微信JDTech,精彩不断呈现!


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多