- 提供查询
查询和幂等的作用区别就在于,很多时候请求方请求出现异常,没有明确的答案,如果希望业务继续,则可以幂等请求 。
例如该用户派发优惠券,如果发生异常则继续幂等派发即可 。
如果需要根据实际业务状态决定如何操作,则需要先查询 。
例如:很多有时效的业务,抢购业务,用户下单异常,最终没抢到货 。
肯定是先查询,如果刚才订单实际成功,则给用户退款 。如果刚才订单未成功,则直接关闭业务,这单子不用继续做下去了 。
- 异步通知:
很多下单接口是异步接口,真正的业务状态在同步中无法返回,同步仅仅返回已收单 。
异步通知的作用:能增强业务的时效性,同时也能减少请求方轮询导致的压力 。
如果收到明确通知,请求方当即可以触发下一步操作,如果没有通知或通知丢失,请求方只能挂单等待异常处理时主动查询确认状态 。
- 是否需要对账
对账最大的问题是【跨天】,例如:请求方请求时间为凌晨:23:59:59.但是接收方收到的时间为次日:00:00:04
假如按照T+1对账,那在T日临界点,总可能出现对不平的情况 。请求方有该笔账,但是接收方没有 。
我们不讨论【勾对】等其他实现方式 。
如果可能,在定义接口的时候,可以讨论清楚对账方式及以哪方时间为准 。避免后续对账开发困难 。
例如:在下单接口中添加objectData字段,以请求方的该字段作为对账时间依据 。
- 考虑升级
场景1:公私钥泄露需要更换 。
可以在接口中添加keyIndex来标识密钥的版本或者signType字段来标识签名的算法 。
这样请求方报文中使用什么版本的密钥,接收方就使用什么版本的密钥解密 。互相不依赖 。提前配置好即可 。
场景2:接口字段升级
下单接口有新增字段,选择升级接口版本号,形成一个新接口 。老接口仍保留 。接收方先升级,请求方择机升级,互不影响 。
查询同理 。
- 考虑异常
网络异常也导致很多业务异常,我们要充分考虑的异常导致的挂单和中断的情况,做好异常处理和自愈功能 。
例如:对账往ftp上投送对账文件 。可能网络异常,今天的文件没放上去;或者今天的放上去了,但是出问题需要重新放;可能灾备停了两天,在进行对账等等
ps:不要忽略这些小概率事件,没有预案,只要发生一次,造成的异常业务笔数可能手动处理很久 。
- 接口效率
提升效率,控制并发是一个非常庞大的体系 。常见的方式:
1.共享数值字段,我们只做累加
2.每个用户独立有一条记录,将并发化解 。
4.用插入代替更新,分段锁库存等,使用<=0代替=0,防止极限情况击穿等 。
5.分库分表,避免热点表和数据的阻塞 。
6.注意风控,报警等情况 。
……………
- 示例:
“authCode”: “123”, 业务认证码
“appCode”: “123”, 请求方
“deKey”:”frfferdfa” 对称密钥加密值
“partnerData”: “22”, 敏感数据加密值
“seqNo”: “123”,请求流水
“timestamp”: “202107201653123”, 时戳
“keyIndex”: “1”, 加密密钥版本
“sign”: “123” 签名
}
赞 (0) 打赏
文章插图
投稿
广告渠道投放有哪些渠道广告投放渠道有什么优势及区别 在互联网的运营推广中,都是通过网站建站推广和线上投放平台进行推广产品和服务的 。因为,在丰富多彩的互联网营销中,如果只采取单一的推广方式,是很难获得更多的潜在用户的 。所以,接下来给大…
- 各种显示器连接线接口介绍 显示器连接线怎么选
- 电脑各种接口和线的介绍 DVI接口是什么
- 电脑怎么设置usb接口禁用 电脑怎么禁用usb接口
- 固态接口m2和sata区别
- sas接口和sata接口有什么区别
- 手机接口typec是什么?
- 电脑鼠标和键盘接口分三种,PS/2、USB和无线2.4G
- hdcp是什么 HDCP是什么接口
- vga接口和hdmi接口哪个好 VGA和HDMI接口的8大区别总结分析
- iPhone15Ultra是不是Type-C接口 iPhone15Ultra是原来的ProMax吗