CN112200558A - 一种基于规则权重的分布式支付路由的方法及系统 - Google Patents
一种基于规则权重的分布式支付路由的方法及系统 Download PDFInfo
- Publication number
- CN112200558A CN112200558A CN202011121828.4A CN202011121828A CN112200558A CN 112200558 A CN112200558 A CN 112200558A CN 202011121828 A CN202011121828 A CN 202011121828A CN 112200558 A CN112200558 A CN 112200558A
- Authority
- CN
- China
- Prior art keywords
- payment
- routing
- channel
- rule
- weight
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/22—Payment schemes or models
- G06Q20/227—Payment schemes or models characterised in that multiple accounts are available, e.g. to the payer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/02—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
- G06Q20/027—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP] involving a payment switch or gateway
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/12—Payment architectures specially adapted for electronic shopping systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/405—Establishing or using transaction specific rules
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
一种基于规则权重的分布式支付路由的方法及系统,包括:路由服务模块、配置中心模块、路由引擎模块、支付信息收集模块;所述路由服务模块,用于提供对外的支付路由服务;该模块对外连接电商,给电商提供支付路由相关的服务;对内该模块连接路由引擎,通过路由引擎的来提供真正的支付路由服务的支持;路由配置中心模块旨在提高支付路由系统的可用性,降低支付的成本,提高支付通道的稳定性,加速渠道资金的到账时间。本系统使用公司内部hydra容器(一种分布式的远程服务调用框架)进行分布式部署,可以给不同的电商提供定制化的支付路由选择服务,提升了支付系统的稳定性。
Description
技术领域
本发明属于互联网支付领域,具体涉及一种基于规则权重的分布式支付路由的方法及系统。
背景技术
对于当下火热的电商平台来说,支付是其平台的重要组成部分。电商平台为了丰富支付方式会对接大量的支付渠道。当对接的支付渠道越来越多的情况下,支付方式的重复率就会越来越高,电商平台维护支付渠道的成本也会越来越高。
当下的支付路由系统大部分都是基于简单的规则进行支付的通道选择,并不能实时发现支付通道的可用性;同时在规则配置错误以及支付路由系统不可用的情况下,可能会造成整个电商平台的支付功能不可用;同时当支付渠道进行维护时,并不能实时检测到支付渠道的不可用,从而自动进行支付渠道的切换;当下基于权重的支付路由系统,一般都是选择权重最高的支付渠道进行支付,当不同支付渠道的优惠政策的不同的情况下,不能够对支付金额在支付渠道上进行负载均衡,同时也不能将电商的利益进行最大化。
CN 202010469050X提供的支付路由配置方法、装置和系统,根据付款方信息确定付款方的常用支付平台集合,计算支付平台集合中各第一支付平台的使用频率、各第一支付平台对应的支付路由的实时负载及各第一支付平台的支付手续费,并基于业务场景信息及收款方信息从各第一支付平台中选取在当前的业务场景下收款方支持的至少一个目标支付平台,计算各个目标支付平台的优先级,根据优先级对各个目标支付平台进行排序,并发送至客户端进行显示。上述方式考虑到收款方及付款方的支付习惯,在保证收款方及付款方的使用体验的同时,结合支付平台对应的支付路由的负载情况计算优先级以便进行动态调整,提高了支付路由的负载均衡。
CN2019112437430公开了一种分布式智能支付路由方法,包括:路由系统节点接收转发的支付路由请求;路由系统节点通过路由规则加载模块加载路由规则缓存装置中缓存的路由规则以及权重规则;路由系统节点通过路由规则匹配模块给各个支付通道匹配所述路由规则以及所述权重规则;路由系统节点通过路由规则计算模块根据匹配的路由规则以及权重规则,计算各个支付通道的权重分数,获得分数最高的最优支付通道。通过上述方法,可以降低路由系统技术成本和维护成本,提高系统的稳定性、可靠性和可扩展性。
路由规则的计算方式主要有人工路由,当接入的支付通道不多的情况下,运营人员指定支付渠道人工切换即可,但当接入渠道数量增加,人工路由将会是一个巨大的投入。还有基于权重的路由规则计算,对于各个支付通道的依据路由规则因子权重进行打分,分数最高即命中,但路由规则因子即有静态路由规则因子,也有动态路由规则因子,每个路由规则因子维度的权重以及打分计算公式也不是一成不变的,这些对于路由系统的稳定性,可靠性,可扩展性来说都是一个挑战。而且大部分分布式路由系统的路由规则依赖服务来实现,下发路由规则和和实时动态更新路由规则都依赖其他服务的稳定性,导致技术成本和维护成本相对较高以及系统的稳定性,可靠性差。
所述路由规则计算模块根据匹配的路由规则以及权重规则,采用逆波兰式算法,计算各个支付通道的权重分数,并获得分数最高的最优支付通道。
支付路由请求接收模块,用于路由系统节点接收转发的支付路由请求;路由规则加载模块,用于路由系统节点加载路由规则缓存装置中缓存的路由规则以及权重规则;
路由规则匹配模块,用于路由系统节点给各个支付通道匹配所述路由规则以及所述权重规则;
路由规则计算模块,用于路由系统节点根据匹配的路由规则以及权重规则,计算各个支付通道的权重分数,获得分数最高的最优支付通道。
路由规则存储模块,用于当所述路由规则和所述权重规则更新时,接收并存储更新的路由规则和权重规则;路由规则发送模块,用于将所述更新的路由规则和权重规则发送到所述路由系统节点。路由规则接收模块,用于所述路由系统节点接收更新的路由规则和权重规则,并将所述更新的路由规则和权重规则发送到所述路由规则加载模块。
发明内容
为了解决现有技术的上述不足,本发明目的是,设计了一种基于规则权重的分布式支付路由的方法及系统,旨在降低支付通道的维护成本,提高支付系统的稳定性;尤其是根据电商的业务需求,支付路由引擎支持不同路由选择算法的配置。用于满足电商的需要。
本发明的技术方案如下:一种基于规则权重的分布式支付路由系统,其特征在于,包括:路由服务模块、配置中心模块、路由引擎模块、支付信息收集模块;
所述路由服务模块,用于提供对外的支付路由服务;该模块对外连接电商,给电商提供支付路由相关的服务;对内该模块连接路由引擎,通过路由引擎的来提供真正的支付路由服务的支持;
所述配置中心模块,包括:支付渠道的配置、路由规则的配置、支付渠道的权重配置、路由选择算法的配置;路由配置中心模块,其主要用于支付通道的归类聚合,路由规则的配置,路由规则链的配置、支付渠道的权重配置;
支付渠道的配置主要是根据电商对接的支付渠道,将拥有相同能力的支付渠道进行归类并关联到一个路由上;即:一个支付路由至少有一个或多个能力相同的支付渠道;通过对支付路由中的支付渠道进行一系列的路由算法匹配,可以得到一个最合适的支付渠道;路由规则的配置:根据路由引擎支持的规则算法,配置中心会给支付路由配置一套或多套路由规则链进行支付渠道的筛选;
路由规则的配置根据支付规则的业务场景,将影响支付数据的参数进行最小规则化处理;支付规则包括:支付通道的费率计算规则、支付通道的支付成功率规则、支付通道的服务时间规则等;
路由规则链的配置:根据电商的业务需求,电商可以将一个或多个路由规则组合成一条或多条的线性规则路由链;规则引擎通过组装加载路由规则链信息,对路由配置的支付通道进行筛选;
支付渠道的权重配置:主要是根据电商的业务规则,对不同的支付渠道分配不同的权重,对支付路由的支付渠道进行权重的配置;在不同的支付环境下,电商可以对同一个支付渠道进行不同的权重配置;只有在支付环境匹配的情况下,权重分值才会生效;该权重将会影响支付路由对渠道的路由选择;
所述路由引擎模块,其主要包括:路由规则的支持、路由规则的组装、支付权重的计算模块以及路由选择支持;路由引擎模块即规则引擎模块,用来加载支持的路由规则,以及将路由规则根据路由规则链的配置组装成一条条有序的路由规则链;权重计算模块,根据规则引擎模块根据路由规则链清洗出来的支付渠道进行加权操作;
支付信息收集模块,其主要是收集支付渠道的每笔支付信息(包括但不仅限于渠道支付金额的收集、渠道支付成功率的收集、渠道支付延迟的收集等);支付信息收集模块收集的信息将会影响渠道的权重分值,进而影响权重计算模块的支付渠道的权重分值计算;该模块可以通过收集的渠道信息实时感知到支付渠道是否进入维护,从而主动的将支付渠道从支付路由系统剔除或者加入。
支付权重的计算模块即路由选择算法的配置:主要是根据电商的业务需求,支付路由引擎支持不同路由选择算法的配置;其主要的算法有:权重最高选择算法、轮询选择算法、轮询选择算法、随机选择算法、支付限额选择算法等;
支付渠道选择模块,其主要是根据上述支付权重的计算以及支付渠道选择算法进行选择支付渠道,所述支付渠道选择算法包括但不仅限于:权重最高选择算法、轮询选择算法、随机选择算法、支付限额选择算法等。支付通道的归类聚合主要是将多个同样的支付方式(例如中国银行网银支付直连、银联渠道中国银行网银支付间联等)的支付渠道聚合到同一分类下,支付路由将会对这些支付渠道进行权重评分并最终选择最优渠道。
基于路由规则权重计算与配置的支付路由比当前市面上的纯基于规则的支付路由更具有容错性,不会因为人工配置异常造成整个支付系统无法使用;
所述支付信息收集模块的详细显示步骤为:
步骤1:当支付渠道发生支付过程中,系统将会详细记录支付渠道发生的事件信息,例如支付创建事件、支付完成事件、支付异常事件;
步骤2:后台日终程序定时清洗并分析日终系统所产生的支付事件信息,并对支付渠道的质量进行权重评分;
步骤3:支付路由根据支付渠道质量的权重评分,影响路由选择模块对支付渠道的选择。
支付渠道选择算法详细算法说明为:
权重最高选择算法:支付路由选择模块直接选择权重最高的一个的支付渠道,当有多个支付渠道权重一致时,将会发生随机选择;
权重最高选择算法的主要步骤为:
步骤1:当支付渠道经过规则计算权重后,权重最高选择算法会对支付渠道的权重由高到低进行排序。
步骤2:获取支付渠道中最大的权重值,根据权重值获取所有满足要求的支付渠道。
步骤3:当只有一个支付渠道的权重满足最大支付权重条件时,系统会直接选择该渠道作为最终的支付渠道。
步骤4:当有多个渠道的权重满足最大支付权重条件时,系统会使用备用选择算法对满足条件的渠道进行二次选择。
轮询选择算法:支付路由选择模块根据支付渠道的排序,进行轮询选择支付渠道进行支付;权重最高选择算法在支付环境(支付金额、支付方式等)不变时,路由可能一直选择同一个渠道进行支付,其他支付渠道可能永远都无法使用。轮询选择算法有效的避免的此类问题,可以根据渠道权重的高低依次使用渠道进行支付。
所述轮询选择算法的主要步骤为:
步骤1:当支付渠道经过规则计算权重后,轮询选择算法会根据一定的规则对所有可用的支付渠道计算Sha256值。
步骤2:算法根据Sha256值获取系统中记录的上一次选择的支付渠道。
步骤3:算法根据上一次的支付渠道,自动计算下一个支付渠道,并将其作为最终的支付渠道。
步骤4:系统将本次选择的支付渠道以及Sha256值记录在系统中。
随机选择算法:该算法会根据支付渠道的权重值进行随机选择,权重越高的支付渠道,其被选择到的概率也越高;该算法具有很高的随机性,不适合直接作为渠道的选择算法,一般用于其他选择算法的备用选择算法。例如权重最高选择算法出现多个渠道拥有相同的最高权重时,此时就可以使用随机选择算法,对渠道进行二次选择。
支付限额选择算法:主要是电商根据渠道的优惠政策,给不同的渠道分配不同的优惠限额。该选择算法尽可能保证电商的支付金额在渠道优惠金额之内,保证电商利益最大化。该选择算法,比单纯计算渠道费率具有更高的执行效率,以及更好降低电商的支付成本。
所述支付限额选择算法的主要步骤为:
步骤1:后台配置中心配置每个渠道的计费周期以及支付的限额。
步骤2:当计费周期开始,支付限额算法会自动给渠道分配一个系统配置的限额,当渠道发生支付时,算法会自动减少系统配置的限额。
步骤3:该算法会根据渠道的权重值的高低,逐个扫描渠道的可用限额,当渠道限额足够时,算法会自动减少该渠道的限额。
步骤4:当渠道支付失败时,支付网关会自动发送支付失败的事件,支付路由接受到支付失败事件后,会回滚渠道已经分配的支付金额。
步骤5:当所有渠道分配的额度已满时,系统会使用备用的选择算法对渠道进行二次选择。
基于规则权重的支付路由比当前市面上的纯基于规则的支付路由更具有容错性,不会因为人工配置异常造成整个支付系统无法使用。
其核心技术方案主要为:路由配置模块主要是负责动态的配置路由的备用渠道以及规则方案;规则引擎模块负责主要是加载系统中的规则以及根据支付数据动态的组装规则链;权重计算模块根据支付数据以及路由规则链动态的给可用渠道进行权重计算。支付渠道选择模块根据权重分值信息动态选择最优支付渠道;支付信息收集模块主要是收集支付通道的成功率,支付延迟等信息影响支付渠道选择器对支付通道的选择。本系统使用公司内部hydra容器(一种分布式的远程服务调用框架)进行分布式部署,可以给不同的电商提供定制化的支付路由选择服务,提升了支付系统的稳定性。
本发明与支付路由配置方法、装置和系统CN202010469050X的最大区别为:
本发明使用的规则引擎以及规则具有无状态特性,能够在任意节点进行分布式部署,通过服务注册以及发现功能,能够快速将规则服务推送到支付路由系统的服务层。本发明使用的规则引擎中的规则只会影响支付通道的权重,最终会通过支付路由选择器中的路由选择算法去选择最优渠道,并不直接使用规则选择支付渠道。
本发明的支付路由能够主动感知支付渠道的状态信息,根据支付渠道的状态等多方面因素来综合筛选支付渠道,规则不并能完全决定路由的选择。
本发明的支付路由使用了权重,并不会因为人为因素导致规则配置错误而造成整个支付系统的不可用。
本发明与分布式智能支付路由方法及系统-201911243743.0的最大区别为:
本发明的支付路由系统并不会因为渠道的权重值最高而作为最优的支付渠道,本发明中的渠道权重只是路由选择的一个重要维度并不是决定维度。
本发明中的支付路由系统在经历过规则引擎筛选后,会使用路由选择算法来最终选择最优的支付渠道。
本发明的支付路由能够主动感知支付渠道的状态信息,根据支付渠道的状态等多方面因素来综合筛选支付渠道,规则不并能完全决定路由的选择。
有益效果:本发明基于规则权重的分布式支付路由的方法及系统,与支付以及业务没有直接的关联关系,可以将支付路由系统分布式部署,动态的增加以及下架支付路由规则,增加支付路由的容错性、高性能以及高扩展性。综上所述,一种基于规则权重的分布式支付路由的方法及系统主要是能够分布式部署,并且能够动态的扩展规则以及选择算法,并根据当前的支付环境动态的调整支付渠道的权重,提升系统的稳定性、高可用;同时该系统与电商的实际业务耦合性小,具有高度的可以移植性。
附图说明
图1为支付路由的架构图;
图2为支付路由的工作方式;
图3为支付路由的工作流程。
具体实施方式
下面将会结合本发明实施例中的附图,对本发明具体实施方法及系统进行详细的说明以及描述。在此,本发明的示意性的实施方式以及说明用于解释本方法,但并不应该用于对本方法及系统进行限定。
本发明设计的支付路由系统使用公司内部的hydra容器(一种分布式的远程服务调用框架)进行分布式部署。由于本支付路由系统是一种无状态的系统,所有本支付路由系统支持横向扩展能力。
基于规则权重的分布式支付路由系统,包括:路由服务模块、配置中心模块、路由引擎模块、信息收集模块;
所述配置中心模块,包括:支付渠道的配置、路由规则的配置、支付渠道的权重配置、路由选择算法的配置。路由配置中心模块,其主要用于支付通道的归类聚合,路由规则的配置,路由规则链的配置、支付渠道权重的配置,包括:支付通道的归类聚合主要是将多个同样的支付方式(例如中国银行网银支付直连、银联渠道中国银行网银支付间联等)的支付渠道聚合到同一分类下,支付路由将会对这些支付渠道进行权重评分并最终通过路由选择算法选择最优渠道。
所述支付路由权重评分的具体步骤为:
步骤1:规则引擎在使用之前会动态的将所有支持的规则加载到规则引擎中的规则区域。
步骤2:当规则引擎接受到支付请求时,根据路由配置中心模块的配置信息动态的选择规则区域的规则组装成一条或多条路由规则链
步骤3:规则引擎根据支付请求的数据,动态从支付系统中获取所有支持本次支付的支付渠道,并组装成规则执行所需要的上下文信息。
步骤4:规则引擎使用规则链过滤上下文中的渠道,所有经过规则链筛选出的支付渠道都会增加响应的评分。
步骤5:当有多个规则链时,规则引擎将会多个过滤上下文中的渠道。
步骤6:规则引擎将上下文中的支付渠道,通过规则链的评分进行聚合,得到每个渠道的最终权重评分。
一个路由引擎其底层支持多个细粒度的路由规则,这些规则可以根据业务需求进行动态的扩展以及安装。目前路由引擎支持的规则有(包括但不仅限于):服务时间、单笔交易金额、支付手续费、支付总金额、支付通道限额、支付通道笔数限值、渠道支付成功率等。
部分支付路由规则详细说明如下:
服务时间规则:其主要是用于在不同的时间段内优先使用不同的渠道进行支付。
服务时间规则的详细步骤为:
步骤1:在系统中为每个渠道配置服务时间,并配置服务时间的权重。
步骤2:当支付请求发生时,服务时间规则会计算系统当前时间是否满足渠道的服务时间,当满足服务时间时,就会给该渠道增加响应的权重值。
支付手续费规则:其主要是用于计算每个渠道本次支付的手续费,并选择手续费最低的渠道进行支付。
支付手续费规则的详细步骤为:
步骤1:在系统中配置渠道费率的计算方式,渠道费率的计算方式有多种,目前支持根据支付金额的比例计算,根据支付金额的阶梯计算,固定手续费计算等多种计费方式。
步骤2:当支付发生时,系统会根据本次交易的金额以及渠道的收费方式计算每个渠道将会收取的手续费。
步骤3:当手续费计算完成后,将会对手续费由小到大进行排序,并获取最低的手续费。
步骤4:当渠道的手续费等于最低手续费时,就会对该渠道的权重进行增加。
通道支付成功率规则的详细步骤为:
步骤1:当支付网关支付失败或者支付成功时,将会发送支付完成的事件信息。
步骤2:支付路由系统订阅支付完成事件,根据支付订单的信息计算总共支付成功的订单数据以及总支付订单数量计算成功率,并将该成功率记录在系统缓存框架中。
步骤3:渠道支付成功率规则匹配到合适的渠道时,就会从系统缓存框架中获取该渠道的成功率与系统配置的成功率进行比较。
步骤4:当渠道成功率大于设置的默认成功率时就会增加渠道的权重。
路由规则的组装是电商根据自身的业务需求将路由引擎底层支持的路由规则,进行任意的组合成一条或多条适合的路由规则链。支付路由引擎将会根据路由规则链去实时的筛选路由支持的支付渠道。路由规则的组装是根据配置中心的配置实时生效的。
支付路由引擎支持多种路由选择算法,同时可以根据电商的需要实时动态的扩展路由选择算法,并做到实时生效。以下是路由引擎支持的路由选择算法(包括但不仅限于):
权重最高选择:支付路由选择模块直接选择权重最高的一个的支付渠道,当有多个支付渠道权重一致时,将会发生随机选择。
权重最高选择算法的主要步骤为:
步骤1:当支付渠道经过规则计算权重后,权重最高选择算法会对支付渠道的权重由高到低进行排序。
步骤2:获取支付渠道中最大的权重值,根据权重值获取所有满足要求的支付渠道。
步骤3:当只有一个支付渠道的权重满足最大支付权重条件时,系统会直接选择该渠道作为最终的支付渠道。
步骤4:当有多个渠道的权重满足最大支付权重条件时,系统会使用备用选择算法对满足条件的渠道进行二次选择。
信息收集模块,其主要是收集支付渠道的各种信息。当支付渠道进入维护时,信息收集模块就会实时的感知到支付渠道的不可用,并将数据上送给路由引擎模块,路由引擎根据信息模块收集的信息,动态的调整支付渠道的权重信息或者将不可用的支付通道排除,以此来提高支付系统的稳定性。
信息收集模块是基于整个支付系统的事件信息来工作的。其主要工作方式如下:
步骤1:支付网关在调用渠道异常时将会将本次支付异常事件发送到消息中心。
步骤2:信息收集模块将在消息中心订阅支付异常事件,当其接受到支付异常信息时,就会将异常信息进行归类,当检测到渠道不可用时,将会将渠道标记为不可用。被标记为不可用的支付渠道将不会进入支付路由系统的选择。
步骤3:当支付渠道从不可用的状态恢复过来时,就需要人工从系统中再次启用该渠道。
步骤4:当支付成功或者失败时,支付系统将会发送支付完成事件到消息中心。
步骤5:信息收集模块订阅支付完成事件,当接受到支付完成事件是,就会实时计算渠道的成功率信息。
如图1所示为本方法以及系统的架构设计图。如图1所示支付路由方法及系统主要包括七个模块:规则模块、规则链模块、权重计分器、选择器、信息收集器、配置中心、路由服务。渠道和数据模块只是支付路由的依赖模块,并不是完全属于支付路由系统。
如图2所示为路由的工作方式。支付路由系统主要是介于电商的支付服务接口与支付渠道之间。当用户连接到电商的支付服务时,支付路由系统就会根据响应的算法以及规则,选择最佳的支付渠道。电商通过支付路由系统选择出最优支付渠道后,再连接到相应的支付渠道进行支付操作,具体现实步骤为:
步骤1:当用户连接到电商的支付服务时,电商系统将用户的支付信息连接到支付路由系统,进行支付渠道的选择。
步骤2:支付路由系统的路由服务接收到请求后,就是根据电商系统提交的支付信息通过规则链筛选可用支付渠道,并计算权重。
步骤3:支付路由选择出最优渠道返回给电商
步骤4:电商支付服务连接到最优渠道进行支付服务。
如图3为支付路由方法及系统的详细工作流程。如图3所示,其详细步骤为:
步骤1:支付路由引擎加载系统中所有可用的路由规则信息,并且分布式部署支付路由引擎系统。
步骤2:支付路由引擎根据电商连接服务时的支付信息,以及配置中心配置的规则信息,组装一条或多条规则引擎链。
步骤3:支付路由引擎根据配置中心的配置获取可用的支付渠道信息。
步骤4:支付路由引擎通过规则链中的规则信息筛选支付渠道信息。
步骤5:权重计数器将支付路由引擎过滤出来的支付渠道以及通过信息收集器收集的渠道信息对支付渠道进行权重的计算处理。
步骤6:支付路由引擎中的支付渠道选择器通过配置中心配置的选择算法,对支付渠道进行选择,最终会匹配出一个最优质的支付渠道
步骤7:电商连接支付路由匹配出的支付渠道进行支付操作。
为将本将专利描述的更加清晰,下面会结合实际案例来描述本专利。具体操作步骤如下:
1):当系统中存在A渠道、B渠道以及C渠道同时可以支持D银行的支付方式。但是A、B、C三个渠道的收费标准以及稳定性都不太一致。
2):A渠道收费标准为每笔千分之4,但是当交易金额超过10万元可能会被D银行的风控系统拒绝。
3):B渠道的收费标准为交易总金额不足1万元时不收取手续费,交易总金额超过1万元时为每笔千分之2,交易总金额超过5万元时为每笔千分之5。
4):C渠道固定收取千分之3的手续费,没有额度的限值,但是C渠道系统可能在白天的时候系统稳定性不是很好。
基于以上的场景,路由系统可以进行如下的配置:
步骤1:在配置中心中配置D银行支付方式,并且D银行可以使用的备用渠道为A渠道、B渠道、C渠道。
步骤2:在配置中心中设置如下规则链:
规则链1:A渠道可用+支付限额为10万元+可用性大于99%=权重100
规则链2:B渠道可用+交易总金额小于1万元+可用性大于99%=权重100
规则链3:C渠道可用+服务时间为夜间时+可用性大于99%=权重100
步骤3:在配置中心设置首选路由选择算法为权重最高选择算法,备选路由选择算法为轮询选择算法。
基于以上的配置,在支付时可能会发生如下情况:
场景1:当系统白天发生支付、支付总金额在A渠道不超过10万元时,在B渠道超过1万元时,A、B渠道服务可用。
此时规则引擎通过规则判断就会将A渠道标记为权重100、B渠道权重为100、C渠道权重:0。权重最高算法将会将A渠道和B渠道最为首选渠道,并将其发送给轮询选择算法。轮询选择算法将会A渠道最总最终的支付渠道,并记录Sha256值,当类似场景1再次发生支付时,轮询选择算法将会将B渠道作为最终的支付渠道,并以此类推。
场景2:当系统晚上发生支付时、支付总金额在A渠道已经超过10万元时,在B渠道超过5万元时,A、B、C渠道服务可用。
此时规则引擎通过规则判断就会将A渠道标记为权重0、B渠道权重为0、C渠道权重:100。权重最高算法将会将C渠道作为首选渠道。
场景3:当系统白天发生支付,支付总金额在A渠道已经超过10万元时,B渠道进入了维护阶段。
此时规则引擎通过规则判断就会将A渠道标记为权重0、C渠道权重为0、B渠道下架不可用。权重最高算法将会将A渠道和C渠道最为首选渠道,并将其发送给轮询选择算法。轮询选择算法将会A渠道最总最终的支付渠道,并记录Sha256值,当类似场景1再次发生支付时,轮询选择算法将会将C渠道作为最终的支付渠道,并以此类推。
以上实例案例只在用于描述本专利的工作方式,并不用于限值本发明,本发明可以根据不同的支付业务场景进行不同规则以及选择算法的配置。实际场景中远比以上案例要更加的复杂多变。
Claims (10)
1.一种基于规则权重的分布式支付路由系统,其特征在于,包括:路由服务模块、配置中心模块、路由引擎模块、支付信息收集模块;
所述路由服务模块,用于提供对外的支付路由服务;该模块对外连接电商,给电商提供支付路由相关的服务;对内该模块连接路由引擎,通过路由引擎的来提供真正的支付路由服务的支持;
所述配置中心模块,包括:支付渠道的配置、路由规则的配置、支付渠道的权重配置、路由选择算法的配置;路由配置中心模块,其主要用于支付通道的归类聚合,路由规则的配置,路由规则链的配置、支付渠道的权重配置;
支付渠道的配置主要是根据电商对接的支付渠道,将拥有相同能力的支付渠道进行归类并关联到一个路由上;即:一个支付路由至少有一个或多个能力相同的支付渠道;通过对支付路由中的支付渠道进行一系列的路由算法匹配,可以得到一个最合适的支付渠道;路由规则的配置:根据路由引擎支持的规则算法,配置中心会给支付路由配置一套或多套路由规则链进行支付渠道的筛选;
路由规则的配置根据支付规则的业务场景,将影响支付数据的参数进行最小规则化处理;支付规则包括:支付通道的费率计算规则、支付通道的支付成功率规则、支付通道的服务时间规则;
路由规则链的配置:根据电商的业务需求,电商可以将一个或多个路由规则组合成一条或多条的线性规则路由链;规则引擎通过组装加载路由规则链信息,对路由配置的支付通道进行筛选;
支付渠道的权重配置:根据电商的业务规则,对不同的支付渠道分配不同的权重,对支付路由的支付渠道进行权重的配置;在不同的支付环境下,电商可以对同一个支付渠道进行不同的权重配置;只有在支付环境匹配的情况下,权重分值才会生效;该权重将会影响支付路由对渠道的路由选择;
所述路由引擎模块,其主要包括:路由规则的支持、路由规则的组装、支付权重的计算模块以及路由选择支持;路由引擎模块即规则引擎模块,用来加载支持的路由规则,以及将路由规则根据路由规则链的配置组装成一条条有序的路由规则链;权重计算模块,根据规则引擎模块根据路由规则链清洗出来的支付渠道进行加权操作;
支付信息收集模块,其主要是收集支付渠道的每笔支付信息(包括但不仅限于渠道支付金额的收集、渠道支付成功率的收集、渠道支付延迟的收集等);支付信息收集模块收集的信息将会影响渠道的权重分值,进而影响权重计算模块的支付渠道的权重分值计算;
支付权重的计算模块即路由选择算法的配置:根据电商的业务需求,支付路由引擎支持不同路由选择算法的配置;其主要的算法有:权重最高选择算法、轮询选择算法、轮询选择算法、随机选择算法、支付限额选择算法;
支付渠道选择模块,根据上述支付权重的计算以及支付渠道选择算法进行选择支付渠道,所述支付渠道选择算法包括但不仅限于:权重最高选择算法、轮询选择算法、随机选择算法、支付限额选择算法。
2.根据权利要求1所述的基于规则权重的分布式支付路由系统,其特征在于,支付通道的归类聚合主要是将多个同样的支付方式(例如中国银行网银支付直连、银联渠道中国银行网银支付间联等)的支付渠道聚合到同一分类下,支付路由将会对这些支付渠道进行权重评分并最终选择最优渠道。
3.根据权利要求1所述的基于规则权重的分布式支付路由系统,其特征在于,基于路由规则权重计算与配置的支付路由比当前市面上的纯基于规则的支付路由更具有容错性,不会因为人工配置异常造成整个支付系统无法使用。
4.根据权利要求1所述的基于规则权重的分布式支付路由系统,其特征在于,所述支付信息收集模块的详细显示步骤为:
步骤1:当支付渠道发生支付过程中,系统将会详细记录支付渠道发生的事件信息,例如支付创建事件、支付完成事件、支付异常事件
步骤2:后台日终程序定时清洗并分析日终系统所产生的支付事件信息,并对支付渠道的质量进行权重评分;
步骤3:支付路由根据支付渠道质量的权重评分,影响路由选择模块对支付渠道的选择。
5.根据权利要求1所述的基于规则权重的分布式支付路由系统,其特征在于,支付渠道选择算法详细算法为:
权重最高选择:支付路由选择模块直接选择权重最高的一个的支付渠道,当有多个支付渠道权重一致时,将会发生随机选择;
轮询选择算法:支付路由选择模块根据支付渠道的排序,进行轮询选择支付渠道进行支付;
随机选择算法:该算法会根据支付渠道的权重值进行随机选择,权重越高的支付渠道,其被选择到的概率也越高;
支付限额选择算法:将会根据支付渠道的限值金额以及权重,选择一个权重优先级高并且限额充足的渠道进行支付。
6.根据权利要求1所述的基于规则权重的分布式支付路由系统,其特征在于,基于规则权重的支付路由比当前市面上的纯基于规则的支付路由更具有容错性,不会因为人工配置异常造成整个支付系统无法使用。
7.根据权利要求1所述的基于规则权重的分布式支付路由系统,其特征在于,权重最高选择算法:支付路由选择模块直接选择权重最高的一个的支付渠道,当有多个支付渠道权重一致时,将会发生随机选择;
权重最高选择算法的主要步骤为:
步骤1:当支付渠道经过规则计算权重后,权重最高选择算法会对支付渠道的权重由高到低进行排序;
步骤2:获取支付渠道中最大的权重值,根据权重值获取所有满足要求的支付渠道;
步骤3:当只有一个支付渠道的权重满足最大支付权重条件时,系统会直接选择该渠道作为最终的支付渠道;
步骤4:当有多个渠道的权重满足最大支付权重条件时,系统会使用备用选择算法对满足条件的渠道进行二次选择。
8.根据权利要求7所述的基于规则权重的分布式支付路由系统,其特征在于,轮询选择算法:支付路由选择模块根据支付渠道的排序,进行轮询选择支付渠道进行支付;权重最高选择算法在支付环境(支付金额、支付方式等)不变时,路由可能一直选择同一个渠道进行支付,其他支付渠道可能永远都无法使用;轮询选择算法有效的避免的此类问题,可以根据渠道权重的高低依次使用渠道进行支付;
所述轮询选择算法的主要步骤为:
步骤1:当支付渠道经过规则计算权重后,轮询选择算法会根据一定的规则对所有可用的支付渠道计算Sha256值;
步骤2:算法根据Sha256值获取系统中记录的上一次选择的支付渠道。
步骤3:算法根据上一次的支付渠道,自动计算下一个支付渠道,并将其作为最终的支付渠道;
步骤4:系统将本次选择的支付渠道以及Sha256值记录在系统中。
9.根据权利要求7所述的基于规则权重的分布式支付路由系统,其特征在于,随机选择算法:该算法会根据支付渠道的权重值进行随机选择,权重越高的支付渠道,其被选择到的概率也越高;该算法具有很高的随机性,不适合直接作为渠道的选择算法,一般用于其他选择算法的备用选择算法;例如权重最高选择算法出现多个渠道拥有相同的最高权重时,此时就可以使用随机选择算法,对渠道进行二次选择;
支付限额选择算法:主要是电商根据渠道的优惠政策,给不同的渠道分配不同的优惠限额;该选择算法尽可能保证电商的支付金额在渠道优惠金额之内,保证电商利益最大化;该选择算法,比单纯计算渠道费率具有更高的执行效率,以及更好降低电商的支付成本。
10.根据权利要求1-9之一所述的基于规则权重的分布式支付路由系统的支付方法,其特征在于,所述支付限额选择算法的步骤为:
步骤1:后台配置中心配置每个渠道的计费周期以及支付的限额;
步骤2:当计费周期开始,支付限额算法会自动给渠道分配一个系统配置的限额,当渠道发生支付时,算法会自动减少系统配置的限额;
步骤3:该算法会根据渠道的权重值的高低,逐个扫描渠道的可用限额,当渠道限额足够时,算法会自动减少该渠道的限额;
步骤4:当渠道支付失败时,支付网关会自动发送支付失败的事件,支付路由接受到支付失败事件后,会回滚渠道已经分配的支付金额;
步骤5:当所有渠道分配的额度已满时,系统会使用备用的选择算法对渠道进行二次选择;
所述支付路由权重评分的具体步骤为:
步骤1:规则引擎在使用之前会动态的将所有支持的规则加载到规则引擎中的规则区域;
步骤2:当规则引擎接受到支付请求时,根据路由配置中心模块的配置信息动态的选择规则区域的规则组装成一条或多条路由规则链
步骤3:规则引擎根据支付请求的数据,动态从支付系统中获取所有支持本次支付的支付渠道,并组装成规则执行所需要的上下文信息;
步骤4:规则引擎使用规则链过滤上下文中的渠道,所有经过规则链筛选出的支付渠道都会增加响应的评分;
步骤5:当有多个规则链时,规则引擎将会多个过滤上下文中的渠道;
步骤6:规则引擎将上下文中的支付渠道,通过规则链的评分进行聚合,得到每个渠道的最终权重评分。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011121828.4A CN112200558A (zh) | 2020-10-20 | 2020-10-20 | 一种基于规则权重的分布式支付路由的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011121828.4A CN112200558A (zh) | 2020-10-20 | 2020-10-20 | 一种基于规则权重的分布式支付路由的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112200558A true CN112200558A (zh) | 2021-01-08 |
Family
ID=74009449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011121828.4A Withdrawn CN112200558A (zh) | 2020-10-20 | 2020-10-20 | 一种基于规则权重的分布式支付路由的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112200558A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113159740A (zh) * | 2021-03-11 | 2021-07-23 | 深圳市分期乐网络科技有限公司 | 一种支付通道确定方法、装置、电子设备及存储介质 |
CN113225254A (zh) * | 2021-02-10 | 2021-08-06 | 中国科学院计算技术研究所 | 一种链下支付通道路由平衡方法 |
CN113347226A (zh) * | 2021-04-25 | 2021-09-03 | 北京淇瑀信息科技有限公司 | 一种触达渠道路由方法、装置及电子设备 |
CN114782035A (zh) * | 2022-04-19 | 2022-07-22 | 天津银行股份有限公司 | 一种基于分布式的银行统一支付方法 |
CN114997879A (zh) * | 2022-07-18 | 2022-09-02 | 南京希音电子商务有限公司 | 一种支付路由方法、装置、设备和存储介质 |
-
2020
- 2020-10-20 CN CN202011121828.4A patent/CN112200558A/zh not_active Withdrawn
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113225254A (zh) * | 2021-02-10 | 2021-08-06 | 中国科学院计算技术研究所 | 一种链下支付通道路由平衡方法 |
CN113225254B (zh) * | 2021-02-10 | 2022-04-22 | 中国科学院计算技术研究所 | 一种链下支付通道路由均衡方法 |
CN113159740A (zh) * | 2021-03-11 | 2021-07-23 | 深圳市分期乐网络科技有限公司 | 一种支付通道确定方法、装置、电子设备及存储介质 |
CN113159740B (zh) * | 2021-03-11 | 2024-05-17 | 深圳市分期乐网络科技有限公司 | 一种支付通道确定方法、装置、电子设备及存储介质 |
CN113347226A (zh) * | 2021-04-25 | 2021-09-03 | 北京淇瑀信息科技有限公司 | 一种触达渠道路由方法、装置及电子设备 |
CN113347226B (zh) * | 2021-04-25 | 2022-12-02 | 北京淇瑀信息科技有限公司 | 一种触达渠道路由方法、装置及电子设备 |
CN114782035A (zh) * | 2022-04-19 | 2022-07-22 | 天津银行股份有限公司 | 一种基于分布式的银行统一支付方法 |
CN114997879A (zh) * | 2022-07-18 | 2022-09-02 | 南京希音电子商务有限公司 | 一种支付路由方法、装置、设备和存储介质 |
CN114997879B (zh) * | 2022-07-18 | 2022-11-01 | 南京希音电子商务有限公司 | 一种支付路由方法、装置、设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112200558A (zh) | 一种基于规则权重的分布式支付路由的方法及系统 | |
CN106453125B (zh) | 一种基于实时负载率的远程服务调用负载均衡系统 | |
CN108712464A (zh) | 一种面向集群微服务高可用的实现方法 | |
CN105072602A (zh) | 一种sim/usim卡的分配系统及其分配卡、释放卡、切换卡方法 | |
CN108600014B (zh) | 一种基于Stackelberg博弈的存储资源分配方法 | |
CN110032393A (zh) | 一种微服务发布方法、装置、设备及介质 | |
CN102880956A (zh) | 支付服务器和支付通道整合方法 | |
CN114581094B (zh) | 一种支付渠道动态决策方法、服务器及计算机可读介质 | |
CN110287024B (zh) | 一种工业智能边缘计算中面向多服务器多用户的调度方法 | |
CN109670797A (zh) | 支付路由选取方法、装置、设备及存储介质 | |
CN110519776A (zh) | 一种雾计算系统中的均衡聚类和联合资源分配方法 | |
CN109615392A (zh) | 支付通道确定方法及装置 | |
US5414837A (en) | System for determining and returning frequenly requested information by an alternate path in a distributed database | |
CN108616525A (zh) | 网站访问方法和装置、电子设备及存储介质 | |
CN108322249A (zh) | 面向任务驱动的可重构星座卫星入网决策方法及系统 | |
CN110807699B (zh) | 逾期事件的回款催收方法及装置、计算机可读存储介质 | |
CN109672727A (zh) | 网银业务数据处理方法及装置 | |
CN108683557A (zh) | 微服务健康度评估方法、弹性伸缩方法及架构 | |
EP0986194A2 (en) | Cellular communication system employing dynamic preferential channel allocation | |
CN107341650A (zh) | 虚拟资源的转移方法及装置 | |
CN103258389B (zh) | 自助终端上传文件的方法、系统和自助终端 | |
CN107205020A (zh) | 面向服务架构下的服务负载均衡方法及系统 | |
CN110297959A (zh) | 数据存储方法、装置、存储介质及边缘服务器 | |
CN109474902A (zh) | 消息计费装置、方法、终端及系统 | |
CN101662413A (zh) | 一种多业务共生管理方法、装置和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210108 |
|
WW01 | Invention patent application withdrawn after publication |