版本发布处理方法、装置、设备和存储介质制造方法及图纸

技术编号:34842667 阅读:23 留言:0更新日期:2022-09-08 07:40
本申请提供一种版本发布处理方法、装置、设备和存储介质,该方法包括:获取目标应用软件的访问数据流中的第一流量,其中,第一流量为流量截取器根据预先配置的流量截取策略从访问数据流中截取得到的;采用测试服务器中部署的目标应用软件的灰度版本对应的函数测试实例,基于第一流量对灰度版本进行发布风险测试,得到测试结果;输出测试结果至研发服务器,其中,研发服务器基于测试结果确定是否在云服务器上对灰度版本执行发布处理。实现快速且准确的对目标应用程序的灰度版本进行测试验证,以避免直接进行线上发布带来的风险。以避免直接进行线上发布带来的风险。以避免直接进行线上发布带来的风险。

【技术实现步骤摘要】
版本发布处理方法、装置、设备和存储介质


[0001]本专利技术计算机
,尤其涉及一种版本发布处理方法、装置、设备和存储介质。

技术介绍

[0002]目前,功能即服务FaaS平台为开发者提供了一种快速的方式来构建云原生微服务,免去了管理集群的复杂性。和常规服务一样,FaaS场景也需要考虑如何控制新部署版本发生错误,进而带来的风险。
[0003]一种传统的方案是采用Canary发布部署进行测试,以避免上述发布风险。但是,Canary发布部署方案的最大不足是完全按照比例随机测试,并不利于快速测试验证。

技术实现思路

[0004]本专利技术实施例提供一种版本发布处理方法、装置、设备和存储介质,实现快速且准确的对目标应用程序的灰度版本进行测试验证,以避免直接进行线上发布带来的风险。
[0005]第一方面,本专利技术实施例提供一种版本发布处理方法,所述方法包括:
[0006]获取目标应用软件的访问数据流中的第一流量,其中,所述第一流量为流量截取器根据预先配置的流量截取策略从所述访问数据流中截取得到的;
[0007]采用测试服务器中部署的所述目标应用软件的灰度版本对应的函数测试实例,基于所述第一流量对所述灰度版本进行发布风险测试,得到测试结果;
[0008]输出所述测试结果至研发服务器,其中,所述研发服务器基于所述测试结果确定是否在云服务器上对所述灰度版本执行发布处理。
[0009]第二方面,本专利技术实施例提供一种版本发布处理系统,所述系统包括:
[0010]流量截取器,用于根据预先配置的流量截取策略从目标应用软件的访问数据流中截取得到第一流量,并将所述第一流量发送至测试服务器;
[0011]所述测试服务器,与所述流量截取器连接,用于采用预先部署的所述目标应用软件的灰度版本对应的函数测试实例,基于所述第一流量对所述灰度版本进行发布风险测试,得到测试结果;
[0012]研发服务器,与所述测试服务器连接,用于基于所述测试结果确定是否在云服务器上对所述灰度版本执行发布处理。
[0013]第三方面,本专利技术实施例提供一种版本发布处理装置,所述装置包括:
[0014]获取模块,用于获取目标应用软件的访问数据流中的第一流量,其中,所述第一流量为流量截取器根据预先配置的流量截取策略从所述访问数据流中截取得到的;
[0015]测试模块,用于采用测试服务器中部署的所述目标应用软件的灰度版本对应的函数测试实例,基于所述第一流量对所述灰度版本进行发布风险测试,得到测试结果;
[0016]输出模块,用于输出所述测试结果至研发服务器,其中,所述研发服务器基于所述测试结果确定是否在云服务器上对所述灰度版本执行发布处理。
[0017]第四方面,本专利技术实施例提供一种电子设备,包括:存储器、处理器、通信接口;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器至少可以实现如第一方面所述的版本发布处理方法。
[0018]第五方面,本专利技术实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以实现如第一方面所述的版本发布处理方法。
[0019]本专利技术实施例中,可以在FaaS云服务器之外,独立部署用于测试目标应用软件的灰度版本的FaaS测试服务器。在线上发布之前先通过本专利技术提供的方法进行线上测试,采用流量截取器根据预先配置的流量截取策略,从目标应用软件的访问数据流中截取得到第一流量,在获取目标应用软件的访问数据流中的第一流量之后,采用测试服务器中部署的目标应用软件的灰度版本对应的函数测试实例,基于第一流量对灰度版本进行发布风险测试,得到测试结果,再输出测试结果给研发服务器,以使得研发服务器基于测试结果确定是否在云服务器上对灰度版本执行发布处理。
[0020]通过在线上发布之前增加独立的线上测试阶段,采用独立部署的线上FaaS测试服务器来实现对目标应用软件的灰度版本进行线上测试。由于在访问数据流的入口处增加了流量截取器,支持开发者按照预先配置的流量截取策略,将指定的第一流量截取到线上的FaaS测试服务器,由于该FaaS测试服务器与FaaS云服务器相互独立,且该FaaS测试服务器部署有目标应用软件的灰度版本对应的函数测试实例,采用灰度版本对应的函数测试实例基于第一流量对灰度版本进行发布风险测试,得到测试结果,再输出测试结果给研发服务器,以使得研发服务器基于测试结果确定是否在云服务器上对灰度版本执行发布处理。即采用独立管控策略实现更好的隔离和更高效的测试验证效率。
附图说明
[0021]为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0022]图1为本专利技术实施例提供的一种版本发布处理方法的流程图;
[0023]图2为本专利技术实施例提供的一种版本发布处理系统的结构示意图;
[0024]图3为本专利技术实施例提供的一种可选的版本发布处理流程的示意图;
[0025]图4为本专利技术实施例提供的一种版本发布处理装置的结构示意图;
[0026]图5为本专利技术实施例提供的一种电子设备的结构示意图。
具体实施方式
[0027]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0028]下面结合附图对本专利技术的一些实施方式作详细说明。在各实施例之间不冲突的情
况下,下述的实施例及实施例中的特征可以相互组合。另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
[0029]先对本专利技术实施例中涉及到的术语或概念进行解释说明:
[0030]功能即服务(FaaS):是一种云计算服务,它允许开发人员以功能的形式来构建、计算、运行和管理这些应用包,无需维护自己的基础架构。
[0031]金丝雀(Canary)发布策略:是一种灰度发布策略,是指的是在生产环境中分阶段逐步更新后端应用的版本(需要具备流量控制能力),在小范围验证符合预期之后,再推广至整个生产环境。
[0032]API流量:即没有人类直接参与的数据交互,已经达到传统HTTP流量的数倍。
[0033]HTTP流量:一个文件从服务器下载到用户设备所需要的流量。
[0034]域名系统(Domain Name System,DNS),可以将域名解析为IP地址,提供用户上网,能够上网最终是找到IP地址。
[0035]主动移动性域控制器(Activ本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种版本发布处理方法,其特征在于,包括:获取目标应用软件的访问数据流中的第一流量,其中,所述第一流量为流量截取器根据预先配置的流量截取策略从所述访问数据流中截取得到的;采用测试服务器中部署的所述目标应用软件的灰度版本对应的函数测试实例,基于所述第一流量对所述灰度版本进行发布风险测试,得到测试结果;输出所述测试结果至研发服务器,其中,所述研发服务器基于所述测试结果确定是否在云服务器上对所述灰度版本执行发布处理。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取目标应用软件的访问数据流中的第二流量;采用所述云服务器中部署的所述目标应用软件的生产版本对应的函数计算实例承接所述第二流量,其中,所述第二流量为所述访问数据流中除所述第一流量之外的其他流量。3.根据权利要求2所述的方法,其特征在于,在获取目标应用软件的访问数据流中的第一流量之后,所述方法还包括:将所述第一流量发送至负载均衡器中提供的第一虚拟IP,并对所述第一流量进行负载均衡处理后,将处理后第一流量转发至所述测试服务器;所述将所述访问数据流中的第二流量发送至所述云服务器,包括:将所述第二流量发送至负载均衡器中提供的第二虚拟IP,并对所述第二流量进行负载均衡处理后,将处理后第二流量转发至所述云服务器。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:检测所述第一流量的流量值是否大于预设阈值;若所述第一流量的流量值大于所述预设阈值,则除采用测试服务器中部署的所述目标应用软件的灰度版本对应的函数测试实例,基于所述第一流量对所述灰度版本进行发布风险测试之外,还对所述目标应用软件执行灰度发布部署策略;所述方法还包括:在对所述灰度版本执行发布处理之后,对所述目标应用软件执行灰度发布部署策略。5.根据权利要求4所述的方法,其特征在于,对所述目标应用软件执行灰度发布部署策略,包括:按照预定比例将所述访问数据流随机拆分为第一流量和第二流量;将所述第一流量和所述第二流量发送至所述云服务器,以采用所述云服务器基于所述第一流量对所述灰度版本进行发布风险测试;其中,所述云服务器中部署有灰度版本对应的函数测试实例和生产版本对应的函数计算实例。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:若所述目标应用软件所拆分得到的多个函数中至少一个函数发生变更,则在...

【专利技术属性】
技术研发人员:林雪清
申请(专利权)人:阿里巴巴中国有限公司
类型:发明
国别省市:

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

1