第三方支付系统技术分享


layout: post title: "第三方支付系统技术分享" subtitle: " "1.架构设计 2.如何实现 "" date: 2018-10-17 06:00:00 author: "青乡" header-img: "img/post-bg-2015.jpg" catalog: true tags: - 支付

技术架构

1.网上常见的支付系统架构体系图

2.支付宝

3.京东


简化流程图

技术栈

controller/service/dao

1.struts2/springMVC //控制器层
有多个web,有的是struts2(早期),有的是springMVC(后期)。
2.spring //业务层
基于配置文件或注解。
3.ibatis //持久层
基于sql。

三大中间件

1.memcache nosql数据库-基于内存的缓存。

适用于:1.常用数据 2.小数据

例如:短信验证码,tokenID/order等

2.metaQ
消息发送

3.mongoDB
nosql数据库-基于磁盘的缓存

适用于:1.不常用的数据 2.大数据

例如:操作日志等

分布式服务

分布式服务框架

1.zookeeper //服务注册中心
2.阿里dubbo //服务治理和服务发现

服务

1.支付系统核心服务 //几十个
按业务流拆分,按业务拆分

2.基础框架 //1 20个
common框架 //启动服务,memcache缓存,metaQ消息,mongoDB,http请求,加密等

3.后台系统 //几十个
1)总后台 //10来个
2)商家 //10来个
3)代理商 //10来个
4)钱包后台和钱包app //1 20个

4.风控系统 //20个以上

5.model //10来个
订单
提现转账
账户
用户 //系统库
风控
钱包
等等

后台系统

1.总后台
2.商家
3.代理商
4.钱包

移动端

1.商家
2.代理商
3.钱包app
类似支付宝。//核心功能:方便提现和转账。

绑定银行卡

四要素:姓名、身份证号、手机号、银行卡号。

业务场景之入金(支付/订单)和出金(提现和转账)

入金(账户加钱)

支付方式
1.扫码 //二维码
2.H5 //支付宝/微信/浏览器
3.快捷支付 //签约/解约


流程图


3条主线

出金(账户减钱)

1.提现 2.转账


流程图
流程差不多,最大的区别是,一个加钱,一个减钱。

清结算(主要是结算)

1.清算
生成订单数据的时候,订单金额和手续费都已经计算好了。

2.结算 //给账户金额加钱
流程图


订单结算表和支付流水表


结算服务和账户服务之间的关系

数据库oracle

1.按业务划分
订单库
提现/转账库
账户库
系统用户库 等等

2.大表
1)按new/history划分
2)表分区
partition by range (date)

自动化运维jenkins

1.开发和测试
开发提交代码——》git——》jenkins打包——》测试拿包测试。

2.发布 //运维部门,运维系统
测试整包——》推送发布包——》运维正式上线。

线上生产环境部署

1.nginx集群 //静态内容和负载均衡/转发请求
2.tomcat集群
3.服务集群
4.cdn加速 //静态资源
5.中间件集群

总结

1.支付核心交易流程
2.后台运营和监控
3.对账 //单笔订单对账/多笔批量对账
4.风控 //业务比较复杂,各种风控场景、规则
5.通道路由 //实现智能化路由通道:1.负载均衡 2.监控通道质量、是否可用等

网上资料

doc.cocolian.cn/
tech.meituan.com/tag/支付

转载于:https://juejin.im/post/5c22f3ef6fb9a049c965b7a4

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值