概念
聚合支付(云好付): 是集成各三方支付公司优势通道服务的平台,向公司各业务提供统一的金融相关基础服务,如银行卡签约、代扣、扫码支付、支付宝支付、微信支付、数字人民币支付、提现转账、信用卡还款等
支付路由: 基于各种规则筛选出满足业务需求渠道的服务
如下图:
版本迭代
1.0 版本
优点
短、平、快的满足业务诉求,快速接入支付公司通道并保证能用
缺点
1、监控报警漏报率较高,小流量通道故障无法及时发现
2、故障排查链路耗时长,不能及时发现问题
3、故障恢复慢,需要发现问题后,人工手动处理,无法保障实时操作,费时费力
2.0版本
为了满足日益增长的业务需求,大量的支付通道逐渐接入,但三方服务参差不齐,通道稳定性问题日益显现。为了解决1.0版本的缺点和提升通道稳定性,建立一个完善的支付通道自动化管理系统势在必行。
在路由和通信层之间,搭建一套质量监控服务QOS
QOS架构图
数据采集&统计
数据采集指标分为系统指标和业务指标。
系统指标
HTTP错误响应码(HTTP_ERR)
采集HTTP状态等于5XX,4XX之类的数据
响应时间(RT)
设定一个响应时间中间值指标,当响应时间大于规定值时
超时请求(OT)
接口请求超时
请求量(RP)
统计请求量
业务指标
特定错误码(BUS_ERR_CODE)
例如:系统错误
处理中交易占比(PROCESSING_TRADE)
数据统计规则
HTTP错误响应码(HTTP_ERR)
HTTP_ERR发生的次数(HTTP_ERR_COUNT)
HTTP_ERR占请求量的比重(HTTP_ERR_PERCENTAGE = HTTP_ERR_COUNT/RP)
响应时间(RT)
RT发生的次数(RT_COUNT)
RT占请求量的比重(RT_PERCENTAGE = RT_COUNT/RP)
超时请求(OT)
OT发生的次数(OT_COUNT)
OT占请求量的比重(OT_PERCENTAGE = OT_COUNT/RP)
特定错误码(BUS_ERR_CODE)
BUS_ERR_CODE发生的次数(BUS_ERR_CODE_COUNT)
BUS_ERR_CODE占请求量的比重(BUS_ERR_CODE_PERCENTAGE = BUS_ERR_CODE_COUNT/RP)
权重/告警计算
定时计算时间范围内(配置)的数据指标(HTTP_ERR、RT、OT、BUS_ERR_CODE)比重。
计算频率
每分钟 / 每30秒
时间区间
2分钟内 / 5分钟内
得到比重数据后判断是否在 维度指标规则配置 内。得到在规则内的指标数据权重,需要告警的则发送告警信息,需要将权重则按照以下两种方式计算最终权重。
最大值
加权平均数
通道状态事件
当通道数据指标在 维度指标规则配置 内,触发通道状态变更事件 channel_state_event。
通道状态说明如下:
OPEN-通道降权开启状态
CLOSE-通道降权关闭状态
HALF_OPEN-通道降权半打开状态
通道探测恢复机制
探测的主要思想是对故障通道进行小幅放量,通过检测放量交易的成功率判断通道是否恢复正常。如果小幅放量的交易成功率正常则继续放量,反之则直接将通道切回故障,隔一段时间再重新开始进行放量测试,直到将通道置为正常为止。
此过程的关键点是通道放量节奏的控制,通道放量节奏的影响要素有三个:首次放量的大小、两次放量时间间隔、通道放量速度,放量节奏太快则易造成二次故障,太慢则通道恢复过慢,无法达到缩短故障影响时间的效果。
探测流程
当通道处于各个状态时,请求流程如下。
探测规则
放量基数(默认基数perc)
时间区间放量基数07:30~11:00perc(小于默认值perc)14:00~16:30perc(小于默认值perc)19:30~20:30perc(小于默认值perc)
由于业务特殊性在某些时间断内交易量很大,考虑到影响范围最小化,在这些时间段内首次探测放量基数要 小于perc
放量基数配置规则
首次放量的大小:perc
通道逐步放量比例:2n * perc (1perc:2perc:4perc:8perc:16perc……)
首次放量时间:t * 时间区间
逐步放量时间间隔: 2n * perc > 100% 计算出n的最小值m, 每次间隔(m-n)*时间区间*系数x (注:此处n是逐步放量比例里面的当前n值,系数x是为了避免时间区间过小时每次间隔时间过短)
放量探测细节
生产案例
渠道服务抖动,超过23%的请求超时OT,触发通道降权开启的open状态,业务上根据open立即自动切换到其他通道
在open状态时 业务上开启阶段性灰度探测 状态由open切换到通道降权半打开half_open状态
探测结束时,通道流量完全恢复,状态由half_open切换到通道降权关闭close状态
1、快速感知到通道抖动问题
2、自动切换通道,缩短通道发生抖动对业务影响时长
3、节省排查故障的人力成本,无需人工切换通道
4、自动探测恢复通道流量
未来规划
1、根据通道成本,用户,单日额度,拆单等规则自动切换路由通道
2、自动切换通道重试交易
总结
通过不断迭代夯实基础服务,不仅满足业务诉求,还能通过自动切换通道保障业务稳定。稳定的还款通道,能有效降低维护成本,让有限的精力投入到更有价值的地方。