遇到的挑战?
我们的优化之路跟每个阶段要解决的业务和系统的问题息息相关,下面针对每个阶段要解决的问题和解决方案跟大家分享下:
- 从0到1,我们怎么快速搭建新的体系?
- 2015双11,每年的大促都是重头戏,性能如何保证?
- 平台化,要支撑美联集团多产品体系,我们要如何改造?
- 未来我们主要关注哪些点?
从0到1( V1.0 )—我们遇到了哪些问题?
- 缺乏消费信贷业务和技术专家:从零开始摸索;
- 项目周期比较短,2个月之内项目必须上线;
- 技术团队人员紧张;
- 交互射击系统和模块:数十个;
- 深度合作方系统同时搭建:系统需要保持同步、沟通成本很高;
从0到1( V1.0 )—偷师学艺
- 研究“消费信贷”相关论文;
- 研究芝麻信用、ZestFinance和FICO信用评分的维度和模式;
- 学习国内“支付宝花呗”、“京东白条”等产品的特点和流程;
- 与同行进行交流和讨论;
从0到1( V1.0 )—极简设计
我们通过简化系统流程,充分利用内部已成型的技术体系和平台,高效整合快速具备了高可用的收单、账务及风控等基础能力和大数据存储的能力,使项目能如期上线,还减少了数倍的人员投入;
- 支付流程简化;
- 利用支付基础平台,使得系统通过低成本就具备了账务、监控等高可用能力;
- 大数据存储:MoGuBase
从0到1( V1.0 )—极简设计— MoGuBase
- 基于Hbase的分布式存储服务;
- 支持MySql协议;
- 支撑消费信贷数据量:1200万/日;
2015双11 — 性能如何保障?
- 支撑QPS:1000
- 投保、账单、计算等运算量大;
- Rt提升方案?
2015双11 —缓存优化—风险控制
- 风险控制采取预处理、纯缓存操作等优化方案,针对套现、支付风险等模型在20ms以内可以完成计算和判定;
2015双11 —用户账单优化
如何保证月账单按时生成?
- 抽象统一的交易和还款体系,入退货还款、订单还款等,简化账单生成需要的数据维度,账单金额=交易金额 – 还款金额;
- 从用户维度进行画风,利用多线程同时进行账单计算和生成;
- 每秒可产生上万笔的账单;
平台化,服务多产品体系—系统重构之路
- 第一阶段:单体应用拆分,抽象活动管理平台,上线数据一致性系统,为PHP体系到Java生态的转变保驾护航;
- 第二阶段:支撑多产品体系和多电商平台,合作渠道丰富化,尽可能扩大用户覆盖群体;
第一阶段
- 2015年底我们起点了PHP Web 单体应用拆分为一个个Java Web 业务应用和前后端分离项目,我们第一阶段就是进行拆分,让消费信贷系统从单体的PHP应用中分离出来,独立成Java服务化应用;
- 采取项目制管理方式,通过分析、设计方案、编码实现、测试、灰度交付、全面上线等过程和采取项目日报、周报等跟踪形式,让项目高效、高质量地交付;
- 主线数据一致性补偿系统,为PHP体系到Java生态的转变保驾护航
第二阶段
- 第二阶段的目的,支撑多产品体系和多电商平台,合作渠道丰富化,尽可能扩大用户覆盖群体;
- 我们一句分层式结构,把应用划分为产品层、核心服务层
- 基础支撑层、支付服务、系统组件;
- 系统信贷核心服务包括用户、交易、账单、授信、还款、利息,产品层包括普通消费模式、商品分期付款模式和订单分期付款模式,核心服务的下沉,以便快速支持业务发展;
未来我们主要关注哪些点?
- 如何更好地优化用户授信模型,使更多的用户受益;
- 产品越来越丰富,合作渠道也越来越多,清晰地对账和结算体系刻不容缓;
- 每月、每年的大促挑战不断,在面临不停歇的业务需求的同时还需要不断地挑系统的性能和稳定性
分享者简介:
王辉,蘑菇街资深开发工程师
支付金融事业部初创技术员工之一,经历金融产品技术从无到有的整个过程,参与过多个金融产品的重要项目,包括消费信贷产品“买呗”,理财宝,商家贷款等产品,以及第一版的支付账务可单元化优化等。主要技术方向是研究适合互联网金融应用的技术架构与大规模应用实践。
本文转载自微信公众号 中生代技术 freshmanTechnology
时间: 2024-09-11 17:32:01