概念

聚合支付(云好付): 是集成各三方支付公司优势通道服务的平台,向公司各业务提供统一的金融相关基础服务,如银行卡签约、代扣、扫码支付、支付宝支付、微信支付、数字人民币支付、提现转账、信用卡还款等

支付路由: 基于各种规则筛选出满足业务需求渠道的服务

如下图:

聚合支付之支付路由进化之路_权重

版本迭代

1.0 版本

聚合支付之支付路由进化之路_权重_02

优点

短、平、快的满足业务诉求,快速接入支付公司通道并保证能用

缺点

1、监控报警漏报率较高,小流量通道故障无法及时发现

2、故障排查链路耗时长,不能及时发现问题

3、故障恢复慢,需要发现问题后,人工手动处理,无法保障实时操作,费时费力

2.0版本

为了满足日益增长的业务需求,大量的支付通道逐渐接入,但三方服务参差不齐,通道稳定性问题日益显现。为了解决1.0版本的缺点和提升通道稳定性,建立一个完善的支付通道自动化管理系统势在必行。

在路由和通信层之间,搭建一套质量监控服务QOS

聚合支付之支付路由进化之路_HTTP_03

QOS架构图

 

聚合支付之支付路由进化之路_数据_04

数据采集&统计

数据采集指标分为系统指标和业务指标。

系统指标

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-通道降权半打开状态

通道探测恢复机制

探测的主要思想是对故障通道进行小幅放量,通过检测放量交易的成功率判断通道是否恢复正常。如果小幅放量的交易成功率正常则继续放量,反之则直接将通道切回故障,隔一段时间再重新开始进行放量测试,直到将通道置为正常为止。

此过程的关键点是通道放量节奏的控制,通道放量节奏的影响要素有三个:首次放量的大小、两次放量时间间隔、通道放量速度,放量节奏太快则易造成二次故障,太慢则通道恢复过慢,无法达到缩短故障影响时间的效果。

探测流程

当通道处于各个状态时,请求流程如下。

聚合支付之支付路由进化之路_HTTP_05

探测规则

放量基数(默认基数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是为了避免时间区间过小时每次间隔时间过短)

放量探测细节

聚合支付之支付路由进化之路_数据_06

生产案例

聚合支付之支付路由进化之路_数据_07

渠道服务抖动,超过23%的请求超时OT,触发通道降权开启的open状态,业务上根据open立即自动切换到其他通道

聚合支付之支付路由进化之路_权重_08

在open状态时 业务上开启阶段性灰度探测 状态由open切换到通道降权半打开half_open状态

聚合支付之支付路由进化之路_权重_09

探测结束时,通道流量完全恢复,状态由half_open切换到通道降权关闭close状态

聚合支付之支付路由进化之路_权重_10

1、快速感知到通道抖动问题 

2、自动切换通道,缩短通道发生抖动对业务影响时长 

3、节省排查故障的人力成本,无需人工切换通道 

4、自动探测恢复通道流量

未来规划

1、根据通道成本,用户,单日额度,拆单等规则自动切换路由通道 

2、自动切换通道重试交易

总结

通过不断迭代夯实基础服务,不仅满足业务诉求,还能通过自动切换通道保障业务稳定。稳定的还款通道,能有效降低维护成本,让有限的精力投入到更有价值的地方。