【技术实现步骤摘要】
一种控制软件新功能上线灰度发布的方法和电子设备
[0001]本申请涉及软件编程
,尤其涉及一种控制软件新功能上线灰度发布的方法和电子设备。
技术介绍
[0002]在目前各个生产系统有新功能上线迭代发布的时候,即便上线前经过多轮测试,但到了生产依旧不可避免的容易产生一些遗漏的问题,这时,通常是将整体代码或者发布回滚到上一个版本状态,但是这样往往把本次发布包含的其他正常的新功能也一并回滚掉了,导致迭代效率很低,用户体验极度受损。
技术实现思路
[0003]为此,本申请提供一种软件新功能上线灰度发布的方法,有助于帮助解决目前将整体代码或者发布回滚到上一个版本状态,往往把其他正常的新功能一并回滚掉,导致迭代效率低,用户体验极度受损的问题。
[0004]为实现以上目的,本申请采用如下技术方案:
[0005]第一方面,本申请提供一种控制软件新功能上线灰度发布的方法,包括:
[0006]获取软件新功能的关键字和业务场景;
[0007]读取与业务场景对应的配置信息,其中,配置信息包括黑名单、白名单、灰度实现类和灰度比例值;
[0008]查询与灰度实现类对应的灰度发布判断策略;
[0009]利用关键字和配置信息判断软件新功能是否符合灰度发布判断策略,并得到判断结果,判断结果用于指示软件新功能是否符合灰度发布判断策略,确定软件新功能是否在灰度发布范围内;
[0010]若判断结果为“正确”,则软件新功能符合灰度发布判断策略,确定软件新功能在本次发布的范围内。r/>[0011]进一步地,灰度实现类包括通用比例实现类;
[0012]利用关键字和配置信息判断软件新功能是否符合灰度发布判断策略,并得到判断结果,判断结果用于指示软件新功能是否符合灰度发布判断策略,确定软件新功能是否在本次发布范围内,包括:
[0013]判断关键字是否在黑名单中,若关键字在黑名单中,则判断结果为“错误”,判断结果用于指示软件新功能不符合灰度发布判断策略,确定软件新功能不在本次发布的范围内。
[0014]进一步地,判断关键字是否在黑名单中之后,还包括:
[0015]若关键字不在黑名单中,则判断关键字转化后的数字除以100得到的余数是否小于或等于灰度比例值,若余数小于或等于灰度比例值,则判断结果为“正确”,判断结果用于指示软件新功能符合灰度发布判断策略,确定软件新功能在本次发布的范围内。
[0016]进一步地,判断关键字转化后的数字除以100得到的余数是否小于或等于灰度比例值之后,还包括:
[0017]若余数大于灰度比例值,则判断关键字是否在配置信息中的白名单中,若关键字在白名单中,则判断结果为“正确”,判断结果用于指示软件新功能符合灰度发布判断策略,确定软件新功能在本次发布的范围内。
[0018]进一步地,判断关键字是否在的白名单中之后,还包括:
[0019]若关键字不在白名单中,则判断结果为“错误”,判断结果用于指示软件新功能不符合灰度发布判断策略,确定软件新功能不在本次发布的范围内。
[0020]进一步地,灰度实现类还包括店铺账号实现类和用户注册日期实现类。
[0021]第二方面,提供一种电子设备,包括:
[0022]处理器和存储器;
[0023]处理器与存储器通过通信总线相连接;
[0024]其中,处理器,用于调用并执行存储器中存储的程序;
[0025]存储器,用于存储程序,程序至少用于执行第一方面的一种控制软件新功能上线灰度发布的方法。
[0026]本申请提供的技术方案可以包括以下有益效果:
[0027]本申请的方法获取软件新功能的关键字和业务场景,读取与业务场景对应的配置信息,根据配置信息中的灰度发布类查询到与灰度实现类对应的灰度发布判断策略,然后利用关键字和配置信息判断软件新功能是否符合灰度发布判断策略,并得到判断结果,基于判断结果得出软件新功能是否符合灰度发布判断策略,进而确定软件新功能是否在本次发布的范围内,如果软件新功能在本次发布范围内,则回退时将该软件新功能回退到上一个版本,其他软件新功能不会回退;如果软件新功能不在本次发布范围内,则回退时该软件新功能不会回退到上一个版本,能够做到按照单个软件新功能进行回退,而不是将软件的各个功能一起回退,解决了目前将整体代码或者发布回滚到上一个版本状态,往往把其他正常的新功能一并回滚掉,导致迭代效率低,用户体验极度受损的问题。
[0028]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
[0029]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
[0030]图1是根据一示例性实施例示出的一种控制软件新功能上线灰度发布的方法的流程图;
[0031]图2是根据一示例性实施例示出的一种电子设备的框图示意图。
具体实施方式
[0032]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附
权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
[0033]请参见图1,图1是根据一示例性实施例示出的一种控制软件新功能上线灰度发布的方法的流程图;
[0034]在一个具体实施例中,本专利技术提供一个灰度接口,可供第三方调用,第三方调用灰度接口并在灰度接口中输入与软件新功能对应的关键字和业务场景,根据灰度接口可以对接任意业务场景和程序代码,因此可以在任意业务场景,任意局部代码、全局代码中实现精准灰度、流量切换、实现对新老功能的平滑过度和保护。
[0035]本方法执行如下步骤:
[0036]S101、获取软件新功能的关键字和业务场景;
[0037]S102、读取与业务场景对应的配置信息,其中,配置信息包括黑名单、白名单、灰度实现类和灰度比例值;
[0038]S103、查询与灰度实现类对应的灰度发布判断策略;
[0039]S104、利用关键字和配置信息判断软件新功能是否符合灰度发布判断策略,并得到判断结果,判断结果用于指示软件新功能是否符合灰度发布判断策略,确定软件新功能是否在本次发布范围内;
[0040]S105、若判断结果为“正确”,则软件新功能符合灰度发布判断策略,确定软件新功能在本次发布的范围内。
[0041]具体的,在灰度接口中输入与软件新功能对应的关键字和业务场景之后,获取关键字和业务场景,从阿波罗配置中心读取与业务场景对应的配置信息,配置信息包括黑名单、白名单、灰度实现类和灰度比例值等,查询与灰度实现类对应的灰度发布判断策略,并利用关键字和配置信息判断软件新功能是否符合灰度发布判断策略,并得到判断结果,判断结果用于指示软件新本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种控制软件新功能上线灰度发布的方法,其特征在于,包括:获取所述软件新功能的关键字和业务场景;读取与所述业务场景对应的配置信息,其中,所述配置信息包括黑名单、白名单、灰度实现类和灰度比例值;查询与所述灰度实现类对应的灰度发布判断策略;利用所述关键字和所述配置信息判断所述软件新功能是否符合所述灰度发布判断策略,并得到判断结果,所述判断结果用于指示所述软件新功能是否符合所述灰度发布判断策略,确定所述软件新功能是否在本次发布范围内;若所述判断结果为“正确”,则所述软件新功能符合所述灰度发布判断策略,确定所述软件新功能在本次发布的范围内。2.根据权利要求1所述的方法,其特征在于,所述灰度实现类包括通用比例实现类;利用所述关键字和所述配置信息判断所述软件新功能是否符合所述灰度发布判断策略,并得到判断结果,所述判断结果用于指示所述软件新功能是否符合所述灰度发布判断策略,确定所述软件新功能是否在本次发布范围内,包括:判断所述关键字是否在所述黑名单中,若所述关键字在所述黑名单中,则所述判断结果为“错误”,所述判断结果用于指示所述软件新功能不符合所述灰度发布判断策略,确定所述软件新功能不在本次发布的范围内。3.根据权利要求2所述的方法,其特征在于,所述判断所述关键字是否在所述黑名单中之后,还包括:若所述关键字不在所述黑名单中,则判断所述关键字转化后的数字除以100得到的余数是否小于或等于所...
【专利技术属性】
技术研发人员:程绍杰,
申请(专利权)人:上海中通吉网络技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。