灰度策略配置方法技术

技术编号:39730988 阅读:18 留言:0更新日期:2023-12-17 23:34
本发明专利技术公开了一种灰度策略配置方法

【技术实现步骤摘要】
灰度策略配置方法、装置、非易失性存储介质及电子设备


[0001]本专利技术涉及人工智能领域,还涉及灰度测试领域或其他金融科技领域,具体而言,涉及一种灰度策略配置方法

装置

非易失性存储介质及电子设备


技术介绍

[0002]灰度发布是一种能够平滑上线应用功能的一种发布方式

通过调整灰度发布的策略可以使得小部分用户先行使用新版本功能,大部分用户仍然使用旧版本

根据使用新版本应用的用户的反馈对新版本功能进行维护更新后,逐渐扩大到所有用户进行使用

[0003]然而当前的灰度发布方式中存在如下问题:每个月度版本均需所有开发登记修改的代码所涉及的服务接口,可能存在漏登记

忘登记

判断服务接口错误等情况,导致影响功能测试环境效率

灰度配置管理员需要根据开发所登记的内容配置相应的灰度规则,增加中间环节,加大测试成本,重复内容的大量枯燥工作,容易导致配置错误

增加开发经理投产前检查成本,为灰度测试投入过大精力,且仍存在灰度规则漏配错配的问题

为灰度测试而引入因灰度测试导致的问题,舍本逐末

[0004]针对上述的问题,目前尚未提出有效的解决方案


技术实现思路

[0005]本专利技术实施例提供了一种灰度策略配置方法

装置

非易失性存储介质及电子设备,以至少解决由于灰度策略配置过程不智能造成灰度测试失败的技术问题

[0006]根据本专利技术实施例的一个方面,提供了一种灰度策略配置方法,包括:获取入库代码,其中,所述入库代码用于更新目标
Java
方法;获取方法关联信息表,其中,所述方法关联信息表用于记录微服务与
Java
方法的第一关联关系;根据所述入库代码对应的目标
Java
方法和所述方法关联信息表,确定所述入库代码对应的目标入口微服务,其中,所述目标入口微服务通过调用所述目标
Java
方法实现功能;根据所述目标入口微服务,生成对所述入库代码对应的灰度路由策略,其中,所述灰度路由策略用于对所述入库代码进行灰度测试

[0007]可选地,所述方法关联信息表通过如下方式生成:对应用项目程序进行文件扫描,得到所述应用项目程序的
Java
文件;解析所述
Java
文件,得到所述
Java
文件包括的
Java
方法之间的第二关联关系,其中,所述第二关联关系表征
Java
方法之间的调用情况;确定所述
Java
方法中与入口微服务对应的入口方法;根据所述入口方法和所述第二关联关系,确定所述第一关联关系,其中,所述第一关联关系表征所述
Java
方法分别对应的入口微服务;根据所述第一关联关系,生成所述方法关联信息表

[0008]可选地,解析所述
Java
文件,得到所述
Java
文件包括的
Java
方法之间的第二关联关系,包括:解析所述
Java
文件,得到所述
Java
文件包括的
Java
方法;扫描所述
Java
方法各自对应的代码行,定位所述
Java
方法各自的点“.”与左括号“(”;根据“.”左侧的内容确定所述
Java
方法各自关联方法对应的实际文件名与实际包路径,根据“.”右侧“(”左侧的内容确定关联方法的方法名;根据所述实际文件名

所述实际包路径和所述方法名,确定所述
Java
方法各自对应的关联方法,生成所述第二关联关系

[0009]可选地,根据所述入口方法和所述第二关联关系,确定所述第一关联关系,其中,所述第一关联关系表征所述
Java
方法分别对应的入口微服务,包括:根据所述第二关联关系对所述
Java
方法进行反向递归,确定所述
Java
方法各自对应的入口方法;根据所述入口方法与入口微服务的对应关系,确定所述
Java
方法各自对应的入口微服务,生成所述第一关联关系

[0010]可选地,确定所述
Java
方法中与入口微服务对应的入口方法,包括:采用
Java
反射功能,确定所述
Java
方法中是否包括微服务注解;将包括微服务注解的
Java
方法确定为所述入口方法

[0011]可选地,获取入库代码,包括:通过定时任务或者代码入库触发器,自动检测代码入库记录表的数据更新情况,其中,所述代码入库记录表用于记录版本控制系统中的代码更新;在所述代码入库记录表中记录了所述入库代码的更新情况的情况下,获取所述入库代码

[0012]可选地,所述方法还包括:获取流量数据;确定所述流量数据是否携带调用所述目标入口微服务的请求;在所述流量数据携带了调用所述目标入口微服务的请求的情况下,根据所述灰度路由策略,为所述流量数据匹配灰度服务器的服务接口

[0013]根据本专利技术实施例的另一个方面,提供了一种灰度策略配置装置,包括:第一获取模块,用于获取入库代码,其中,所述入库代码用于更新目标
Java
方法;第二获取模块,用于获取方法关联信息表,其中,所述方法关联信息表用于记录微服务与
Java
方法的关联关系;确定模块,用于根据所述入库代码对应的目标
Java
方法和所述方法关联信息表,确定所述入库代码对应的入口微服务,其中,所述入口微服务通过调用所述目标
Java
方法实现功能;生成模块,用于根据所述入口微服务,生成对所述入库代码对应的灰度路由策略,其中,所述灰度路由策略用于对所述入库代码进行灰度测试

[0014]根据本专利技术实施例的又一个方面,提供了一种非易失性存储介质,所述非易失性存储介质包括存储的程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行上述任意一项所述灰度策略配置方法

[0015]根据本专利技术实施例的再一个方面,提供了一种电子设备,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述任意一项所述的灰度策略配置方法

[0016]在本专利技术实施例中,通过获取入库代码,其中,入库代码用于更新目标
Java
方法;获取方法关联信息表,其中,方法关联信息表用于记录微服务与
Java
方法的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种灰度策略配置方法,其特征在于,包括:获取入库代码,其中,所述入库代码用于更新目标
Java
方法;获取方法关联信息表,其中,所述方法关联信息表用于记录微服务与
Java
方法的第一关联关系;根据所述入库代码对应的目标
Java
方法和所述方法关联信息表,确定所述入库代码对应的目标入口微服务,其中,所述目标入口微服务通过调用所述目标
Java
方法实现功能;根据所述目标入口微服务,生成对所述入库代码对应的灰度路由策略,其中,所述灰度路由策略用于对所述入库代码进行灰度测试
。2.
根据权利要求1所述的方法,其特征在于,所述方法关联信息表通过如下方式生成:对应用项目程序进行文件扫描,得到所述应用项目程序的
Java
文件;解析所述
Java
文件,得到所述
Java
文件包括的
Java
方法之间的第二关联关系,其中,所述第二关联关系表征
Java
方法之间的调用情况;确定所述
Java
方法中与入口微服务对应的入口方法;根据所述入口方法和所述第二关联关系,确定所述第一关联关系,其中,所述第一关联关系表征所述
Java
方法分别对应的入口微服务;根据所述第一关联关系,生成所述方法关联信息表
。3.
根据权利要求2所述的方法,其特征在于,解析所述
Java
文件,得到所述
Java
文件包括的
Java
方法之间的第二关联关系,包括:解析所述
Java
文件,得到所述
Java
文件包括的
Java
方法;扫描所述
Java
方法各自对应的代码行,定位所述
Java
方法各自的点“.”与左括号“(”;根据“.”左侧的内容确定所述
Java
方法各自关联方法对应的实际文件名与实际包路径,根据“.”右侧“(”左侧的内容确定关联方法的方法名;根据所述实际文件名

所述实际包路径和所述方法名,确定所述
Java
方法各自对应的关联方法,生成所述第二关联关系
。4.
根据权利要求2所述的方法,其特征在于,根据所述入口方法和所述第二关联关系,确定所述第一关联关系,其中,所述第一关联关系表征所述
Java
方法分别对应的入口微服...

【专利技术属性】
技术研发人员:段高扬熊昕霞肖建勇郑博文
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1