Gray released a software upgrade method and system, the system parameters, multiple stage configuration corresponding to a gray release process of the observed time in which the first stage corresponds to the observation of the longest time; followed by multiple stages of the gray release process, in each stage of the software to be part of an example upgrade to upgrade, and based on the running state of the corresponding stage of the observation time of the new version of the software case were observed to determine the software instance whether successful upgrade. This application uses longer observation time in the first stage of grayscale release, making publishing more robust, and accelerating observation time in subsequent stages, enabling the correct version to be released as soon as possible.
【技术实现步骤摘要】
一种软件升级的灰度发布方法及系统
本专利技术涉及一种计算机领域,更具体地,涉及一种软件升级的灰度发布方法及相应的灰度发布系统。
技术介绍
灰度发布是在黑与白之间,能够平滑过渡的一种发布方式。AB测试(test)就是一种灰度发布方式,先让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题。灰度发布可用于将软件从旧版本逐步升级到新版本的过程。软件升级的灰度发布过程分为多个阶段依次升级,前一阶段升级成功后,再对下一组服务器升级,如果某一阶段升级失败,会停止灰度发布过程,将服务器上的服务回滚到升级前的版本。目前,在灰度发布过程的各个阶段,对软件实例升级是否成功的观察方式是相同的,对有功能缺陷的版本的影响范围尚不能做到有效控制。
技术实现思路
有鉴于此,本专利技术提供了以下方案。一种软件升级的灰度发布方法,应用于灰度发布系统,包括:为灰度发布过程的多个阶段配置对应的观察时间的参数,其中,第一个阶段对应的观察时间最长;依次进行所述灰度发布过程的多个阶段,在每一阶段对部分待升级的软件实例进行升级,并基于该阶段对应的观察时间对新版本的软件实例的运行状态进行观察,以确定所述软件实例是否升级成功。一种灰度发布系统,包括参数配置模块和灰度发布模块,其中:所述参数配置模块,用于为灰度发布过程的多个阶段配置对应的观察时间的参数,其中,第一个阶段对应的观察时间最长;所述灰度发布模块,用于依次进行所述灰度发布过程的多个阶段,在每一阶段对部分待升级的软件实例进 ...
【技术保护点】
一种软件升级的灰度发布方法,应用于灰度发布系统,包括:为灰度发布过程的多个阶段配置对应的观察时间的参数,其中,第一个阶段对应的观察时间最长;依次进行所述灰度发布过程的多个阶段,在每一阶段对部分待升级的软件实例进行升级,并基于该阶段对应的观察时间对新版本的软件实例的运行状态进行观察,以确定所述软件实例是否升级成功。
【技术特征摘要】
1.一种软件升级的灰度发布方法,应用于灰度发布系统,包括:为灰度发布过程的多个阶段配置对应的观察时间的参数,其中,第一个阶段对应的观察时间最长;依次进行所述灰度发布过程的多个阶段,在每一阶段对部分待升级的软件实例进行升级,并基于该阶段对应的观察时间对新版本的软件实例的运行状态进行观察,以确定所述软件实例是否升级成功。2.如权利要求1所述的方法,其特征在于:所述观察时间的参数包括:观察超时时间Tout和状态正常时间窗口Twin;所述基于该阶段对应的观察时间对新版本的软件实例的运行状态进行观察,以确定所述软件实例是否升级成功,包括:在一软件实例更新为新版本并运行后,启动定时时长为Tout的第一定时器和定时时长为Twin的第二定时器,Twin≤Tout;在所述第二定时器每次超时前,观察是否收到对该软件实例的报错,如果没有收到,则判定该软件实例升级成功,结束;如果收到,在对该软件实例的报错停止后重新启动所述第二定时器并继续观察;如果所述第一定时器超时前该软件实例没有升级成功,则判定该软件实例升级失败。3.如权利要求2所述的方法,其特征在于:所述第一个阶段对应的观察时间最长,是指第一个阶段和所述多个阶段中的其他阶段相比,对应的Twin最大。4.如权利要求1至3中任一所述的方法,其特征在于:所述依次进行所述灰度发布过程的多个阶段,包括:在所述灰度发布过程的前一阶段升级成功后,再进行后一阶段的升级;其中,一个阶段升级成功指在该阶段升级的所有软件实例中有预定比例的软件实例升级成功,或者指有预定数量的软件实例在该阶段升级成功。5.如权利要求4所述的方法,其特征在于:所述灰度发布过程包括两个阶段,其中第一个阶段为慢启动阶段,第二个阶段为正常阶段。6.如权利要求1至3、5中任一所述的方法,其特征在于:所述灰度发布系统是服务器集群的管理系统;所述在每一阶段对部分待升级的软件实例进行升级,包括:根据配置信息,确定每一阶段需要进行软件实例升级的服务器,对所述服务器上待升级的软件实例进行升级,其中,所述配置信息包括以下一种或多种信息:每一阶段需要进行软件实例升级的服务器的数量;每一阶段需要进行软件实例升级的服务器占所有需要进行软件实例升级的服务器的比例;每一阶段需要进行软件实例升级的服务器的标识信息;每一阶段需要进行软件实例升级的服务器集合的标识信息。7.一种灰度发布系统,其特征在于,包括参数配置模块和灰度发布模块,其中:所述参数配置模块,...
【专利技术属性】
技术研发人员:黄江伟,杨国强,全良添,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。