本文转自公号:技术方舟 支付系统 概述 支付系统是连接消费者、商家(或平台)和金融机构的桥梁,管理支付数据,调用第三方支付平台接口,记录支付信息(对应订单号,支付金额等),金额对账等功能,根据不同公司对于支付业务的定位不同大概有几个阶段:第一阶段:支付作为一个(封闭)的、独立的应用系统,为各系统提供 ...
分类:
其他好文 时间:
2019-06-09 00:18:27
阅读次数:
123
场景:用户重复交易,即同一笔订单号不断支付或充值。 做法: 一般的做法是,在交易接口中,首先查询数据库是否有该笔流水。如果有则返回重复支付,否则放行。 但是,这样的接口违反了“单一职能原则”,对数据库冲击很大,而且修改业务后可能会带来bug隐患。 可这样做: 其他做法: 服务层:修改/删除,用乐观锁 ...
分类:
其他好文 时间:
2019-06-07 10:43:54
阅读次数:
89
本文不谈框架,不谈代码组织结构,只谈怎么实现, 1,微信移动端支付流程如下: 这个流程可以微信app支付文档找到,最重要的就是统一下单这个接口,可以简化一下这个接口,简化后的流程如下: app给后端传:金额total_fee,32位的商户订单号out_trade_no,支付成功后的回调地址notif ...
分类:
微信 时间:
2019-06-06 10:46:26
阅读次数:
446
准备测试数据trade订单号卖家买家买家城市1A小王北京2B小李天津3A小刘北京order所属订单号买家商品名称价格发货时间1小王电视122015-08-0109:08:311小王冰箱242015-08-0109:08:142小李空调122015-09-0209:01:31注:皆以\t分割创建DFdefmain(args:Array[String]):Unit={valspark=SparkSes
分类:
数据库 时间:
2019-05-25 22:56:56
阅读次数:
869
先抛出几个问题 1.为什么不建议使用订单号作为主键? 2.为什么要在需要排序的字段上加索引? 3.for update 的记录不存在会导致锁住全表? 4.redolog 和 binlog 有什么区别? 5.MySQL 如何回滚一条 sql ? 6.char(50) 和 varchar(50) 效果是 ...
分类:
数据库 时间:
2019-05-16 11:12:41
阅读次数:
137
在SAP中对于如何获取订单的状态,提供了至少两个函数,分别是 STATUS_READ 和 STATUS_TEXT_EDIT。下面简单介绍这两个函数 1.STATUS_READ 改函数的实现原理大概是通过订单的对象好(OR+订单号) 到JEST中取出字段STAT INACT. JEST表中STAT是一 ...
分类:
其他好文 时间:
2019-05-14 20:44:10
阅读次数:
172
一、问题引出 1. 假设当当网上用户下单买了本书,这时数据库中有条订单号为001的订单,其中有个status字段是’有效’,表示该订单是有效的; 2. 后台管理人员查询到这条001的订单,并且看到状态是有效的; 3. 用户发现下单的时候下错了,于是撤销订单,假设运行这样一条SQL: update o ...
分类:
数据库 时间:
2019-05-01 11:56:07
阅读次数:
152
原文:EFCore动态切换Schema最近做个分库分表项目,用到schema的切换感觉还是有些坑的,在此分享下。 先简要说下我们的分库分表 分库分表规则 我定的规则是,订单号(数字)除以16,得出的结果为这个订单所在的数据库,然后他的余数代表他所在这个库里面的哪个表。 然后在一个库里面有16个表,这... ...
分类:
其他好文 时间:
2019-04-22 00:30:08
阅读次数:
142
-2 调用对象的direct_pay()方法,传入商品描述,商品订单号,商品价格,返回一堆字符串,拼接到支付宝网关的后面-3 向支付宝网关发送get请求,看到支付页面,用户付款-4 付款成功,支付宝会有一个get回调,一个post回调(需要对回调内容进行验签,alipay.verify)-一般get ...
分类:
其他好文 时间:
2019-04-04 20:29:07
阅读次数:
188
在上一篇文章里 我们配置好和微信交互的URL里 我们就能接收到微信用户发送的消息了 我只需要判断消息的类型或者其他处理其他的业务逻辑 比如你可以根据他发的关键字来处理 他发订单号 你收到后可以去数据库查询 然后在反馈给他 这里我们就简单回复好了 比如他发送什么消息 我们就返回什么消息 首先是我封装的 ...
分类:
微信 时间:
2019-03-24 09:14:36
阅读次数:
367