[发明专利]一种业务请求的处理方法及装置在审
申请号: | 202110708175.8 | 申请日: | 2021-06-25 |
公开(公告)号: | CN113326153A | 公开(公告)日: | 2021-08-31 |
发明(设计)人: | 李上志 | 申请(专利权)人: | 深圳前海微众银行股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 宋正伟 |
地址: | 518027 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 业务 请求 处理 方法 装置 | ||
1.一种业务请求的处理方法,其特征在于,包括:
业务系统接收业务请求;
所述业务系统根据所述业务请求中的设定因素,确定所述业务请求的业务保护条件;所述业务保护条件用于确保业务请求的执行响应满足设定要求;
所述业务系统根据历史业务请求执行状况判断所述业务请求是否满足所述业务保护条件;若满足,则获取拦截器任务层级链;所述拦截器任务层级链是针对所述业务系统中的所有拦截器组件按照执行顺序划分为不同层级,且同一层级中的各拦截器组件之间无依赖关系;
所述业务系统按照所述拦截器任务层级链,依次调用各层级的拦截器组件,确定所述业务请求是否需要被拦截;
所述业务系统在所述业务请求未被所述拦截器任务层级链中的各拦截器组件拦截后,执行所述业务请求的业务逻辑。
2.如权利要求1所述的方法,其特征在于,所述业务请求中的设定因素包括以下至少一项:接口、商户和渠道;
所述业务保护条件包括以下至少一项:请求响应时间超过时间阈值;业务请求的滑动窗口失败率超过失败率阈值;业务请求的数量超过请求数阈值。
3.如权利要求2所述的方法,其特征在于,业务请求若满足所述业务保护条件,则获取拦截器任务层级链,包括:
所述业务系统判断所述业务请求是否超过请求数阈值;若否,则获取所述拦截器任务层级链;
若是,则确定所述业务请求的滑动窗口失败率,并在确定所述业务请求的响应时间未超过时间阈值和所述业务请求的滑动窗口失败率未超过失败率阈值时,获取所述拦截器任务层级链。
4.如权利要求3所述的方法,其特征在于,确定所述业务请求的滑动窗口失败率,包括:
所述业务系统基于所述业务请求时刻的滑动窗口,确定所述滑动窗口中各小窗口的业务请求失败率;
将所述各小窗口的业务请求失败率的和确定为所述业务请求的滑动窗口失败率。
5.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述业务系统根据历史业务请求执行状况确定所述业务请求未满足所述业务保护条件时,收集所述业务请求的异常执行状况,更新所述历史业务请求执行状况;所述异常执行情况包括所述业务请求的响应时间超过时间阈值和所述业务请求的滑动窗口失败率超过失败率阈值;
所述业务系统根据所述异常执行状况对所述设定因素确定限流策略;所述限流策略包括预设限流算法。
6.如权利要求1所述的方法,其特征在于,执行所述业务请求的业务逻辑之前,还包括:
所述业务系统根据所述业务请求的类型,根据执行所述业务请求的接口确定所述业务请求是否满足隔离条件;所述接口中预设有否进行线程资源隔离的方法;
若满足,则对所述业务请求的线程资源进行隔离。
7.如权利要求1至6任一项所述的方法,其特征在于,包括:
所述拦截器任务层级链通过如下方式获得,包括:
所述业务系统在启动后,获取具有注解的各拦截器组件;
所述业务系统根据各拦截器组件之间的依赖关系,构建有向无环图;
所述业务系统根据所述有向无环图,确定所述拦截器任务层级链。
8.如权利要求1至6任一项所述的方法,其特征在于,所述业务系统按照所述拦截器任务层级链,依次调用各层级的拦截器组件,包括:
针对任一待调用层级的拦截器组件,所述业务系统确定所述待调用层级的前一层级的拦截器组件是否调用完成;所述前一层级是所述拦截器任务层级链中与所述待调用层级相邻的前一层;
若是,则并行调用所述待调用层级中的拦截器组件;
所述业务系统确定所述待调用层级是否具有后一层级的拦截器组件;所述后一层级是所述拦截器任务层级链中与所述待调用层级相邻的后一层;
若具有,则更新所述待调用层级为所述后一层级。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳前海微众银行股份有限公司,未经深圳前海微众银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110708175.8/1.html,转载请声明来源钻瓜专利网。