[发明专利]一种灰度验证过滤器及过滤方法有效
| 申请号: | 202110733129.3 | 申请日: | 2021-06-30 |
| 公开(公告)号: | CN113254063B | 公开(公告)日: | 2021-09-21 |
| 发明(设计)人: | 周非飞;唐振华;黄钰清 | 申请(专利权)人: | 四川新网银行股份有限公司 |
| 主分类号: | G06F8/71 | 分类号: | G06F8/71;G06F11/36 |
| 代理公司: | 成都智言知识产权代理有限公司 51282 | 代理人: | 蒋秀清 |
| 地址: | 610094 四川省成都市成都*** | 国省代码: | 四川;51 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 灰度 验证 过滤器 过滤 方法 | ||
本发明属于计算机技术领域,尤其涉及一种灰度验证过滤器,包括在过滤器中设置的流控比例、调用次数以及期望执行灰度方法的参数;流控比例随机生成1个小于N的整数M;再生成1个流量控制值R,R小于或等于N;调用次数为在新版本中预设最大调用次数值MAX,每个场景对新版本的实际调用次数的值CUR与最大调用次数至MAX对比;过滤器中设置期望执行灰度方法的参数,利用反射技术,将期望执行灰度方法的参数变量转换为方法入参对象,通过将转换的对象的非空参数与调用方法入参对象参数对比,对比一致的通过参数场景验证。通过上述三项验证的业务场景则可调用新版本,使得只有小部分业务场景调用新版本,实现迭代升级平稳安全过渡。
技术领域
本发明属于计算机技术领域,尤其涉及一种灰度验证过滤器及过滤方法。
背景技术
在大型分布式系统设计下,目前主流系统设计采用微服务化。服务与服务之间常用RPC和MQ,进行同步或异步交互。在一些迭代任务场景下常采用时间窗口加生产环境,灰度验证环境滚动分布的模式。
但目前主流的灰度流量验证方案,不具备验证数据可控,业务场景可控功能,因此在灰度验证环节,由于处置问题的过程以及及时有效性限制,可能出现大量异常情况,或者没有出现异常情况,但是业务不是按照正常预期逻辑进行;由于业务验证的时效性,也会出现大量隐患异常情况,对于金融系统这种情况是不可接受的。
目前在一些采用敏捷开发的服务,迭代频繁,且一个版本包含了多种迭代需求,由于某一个需求在灰度验证环境出现问题时候,往往不能直接回退到原来版本,需要重新修复问题,测试在发布灰度环境,这样会有一个很长的时间流程,不能迅速响应处置灰度验证出现的问题。
发明内容
本发明提供了一种灰度验证过滤器及过滤方法,拟解决背景技术中所提到的技术问题。
为实现上述目的,本发明提供如下技术方案:
一种灰度验证过滤器,包括在过滤器中设置的用于过滤业务场景的灰度控制变量;
所述灰度控制变量包括流控比例、调用次数以及期望执行灰度方法的参数;
所述流控比例基于概率随机理论对每个业务场景生成1个小于N的整数M,所述N为整数;再生成1个流量控制值R,所述R小于或等于N;
所述调用次数为灰度调用次数控制变量,即新版本中预设最大调用次数值MAX;每个场景对新版本的实际调用次数的值CUR与最大调用次数至MAX对比;
所述过滤器中还设置有期望执行灰度方法的参数,利用反射技术,将期望执行灰度方法的参数变量转换为方法入参对象,通过将转换的对象的非空参数与调用方法入参对象参数对比,对比情况一致的则通过参数场景验证对象。
优选的,所述N取值为所述流量控制值R的10倍。
再进一步的,还包括用于设置流控比例、期望执行灰度方法的参数以及调用次数的具体参数的控制界面。
通过设置控制界面,使得流控比例、期望执行灰度方法的参数以及调用次数能够根据实际情况进行变更,使得本发明更加灵活,实用性更强。
一种灰度验证方法,包括以下步骤:
步骤1:定义流控比例,每个业务场景基于概率随机理论生成1个小于N的整数M,所述N为整数;再生成1个流量控制值R,所述R小于或等于N;
步骤2:判断随机生成的M是否大于R,若任意一个业务场景基于概率随机理论生成的M大于R则不执行以下步骤,且该业务场景直接调用原有版本;若任意一个业务场景基于概率随机理论生成的M小于或等于R,则执行步骤3;
步骤3:对新版本定义一个调用次数控制变量,即预设每个业务场景对新版本的最大调用次数值MAX;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川新网银行股份有限公司,未经四川新网银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110733129.3/2.html,转载请声明来源钻瓜专利网。





