一种灰度发布方法和装置制造方法及图纸

技术编号:8834057 阅读:155 留言:0更新日期:2013-06-22 20:21
本发明专利技术提出一种灰度发布方法和系统,其中方法包括:A、预先保存灰度发布顺序表,所述灰度发布顺序表包括不同类型请求消息的灰度发布顺序以及允许发布新版本软件的请求消息类型;B、接收用户对软件的请求消息,根据该请求消息的类型查找所述灰度发布顺序表,当所述请求消息的类型为允许发布新版本软件的请求消息类型时,控制该请求消息访问所述软件的新版本;否则,控制该请求消息访问所述软件的旧版本。本发明专利技术能够降低灰度发布过程中的风险。

【技术实现步骤摘要】

本专利技术涉及灰度发布
,尤其涉及一种灰度发布方法和装置
技术介绍
灰度发布是指在软件版本发布过程中,能够平滑过渡的一种发布方式。假设当前软件版本是A,新的软件版本是B,当用户通过客户端向服务器发送针对该软件的请求消息时,服务器控制一部分用户继续使用版本A,另一部分用户开始使用版本B ;如果用户在使用版本B的过程中没有出现异常,则逐步将所有用户都迁移到版本B。灰度发布可以保证整体系统的稳定。用户对软件的请求往往会有多种类型,如查询、更新、删除、上传、下载等,现有的灰度发布方法对用户的请求消息不加区分,导致灰度发布的风险较大。
技术实现思路
本专利技术提供了一种灰度发布方法和装置,能够降低灰度发布的风险。本专利技术的技术方案是这样实现的:一种灰度发布方法,包括:A、预先保存灰度发布顺序表,所述灰度发布顺序表包括不同类型请求消息的灰度发布顺序以及允许发布新版本软件的请求消息类型;B、接收用户对软件的请求消息,根据该请求消息的类型查找所述灰度发布顺序表,当所述请求消息的类型为允许发布新版本软件的请求消息类型时,控制该请求消息访问所述软件的新版本;否则,控制该请求消息访问所述软件的旧版本。一种灰度发布装置,包括:存储模块,用于保存灰度发布顺序表,所述灰度发布顺序表包括不同类型请求消息的灰度发布顺序以及允许发布新版本软件的请求消息类型;灰度发布控制模块,用于接收用户对软件的请求消息,根据该请求消息的类型查找所述灰度发布顺序表,当所述请求消息的类型为允许发布新版本软件的请求消息类型时,控制该请求消息访问所述软件的新版本;否则,控制该请求消息访问所述软件的旧版本。可见,本专利技术提出的灰度发布方法和装置,在灰度发布过程中对用户不同类型的请求消息加以区分,先对部分允许发布软件新版本的请求消息进行灰度发布,从而降低灰度发布过程中的风险。附图说明图1为本专利技术提出的灰度发布方法流程图;图2为本专利技术第一种灰度发布实现方式的流程图;图3为本专利技术第二种灰度发布实现方式的流程图。具体实施例方式本专利技术提出一种灰度发布方法,如图1为本专利技术提出的灰度发布方法流程图,包括:步骤101:预先保存灰度发布顺序表,所述灰度发布顺序表包括不同类型请求消息的灰度发布顺序以及允许发布新版本软件的请求消息类型;步骤102:接收用户对软件的请求消息,根据该请求消息的类型查找所述灰度发布顺序表,当所述请求消息的类型为允许发布新版本软件的请求消息类型时,控制该请求消息访问所述软件的新版本;否则,控制该请求消息访问所述软件的旧版本。步骤102之后,可以进一步包括:步骤103:针对一种请求消息类型,当该类型的请求消息访问软件新版本的数量大于预先设定的门限值、并且访问过程没有出现异常时,按照所述灰度发布顺序表中不同类型请求消息的灰度发布顺序,将所述类型之后的类型设置为允许发布新版本软件的请求消息类型;继续执行步骤102。通过上述过程,可以对来自用户的不同类型的请求消息加以区分,首先针对部分类型的请求消息发布软件的新版本,之后逐步扩大到对所有类型的请求消息发布软件的新版本。此外,本专利技术还可以与现有技术中以用户号码为标准的灰度发布控制策略相结合。当用户的号码为允许发布新版本的号码、并且该用户的请求消息类型为允许发布新版本的类型时,控制该请求消息访问软件的新版本;否则,控制该请求消息访问软件的旧版本。具体实现方式可以为:上述步骤102中,当请求消息的类型为允许发布新版本软件的请求消息类型时,在控制请求消息访问软件的新版本之前,进一步包括:判断所述用户是否为允许发布新版本软件的用户,如果是,则继续执行所述控制请求消息访问软件的新版本的步骤;否则,控制该请求消息访问所述软件的旧版本。如图2为本专利技术第一种灰度发布实现方式的流程图。或者,上述步骤102中,在接收用户对软件的请求消息之后,并在根据该请求消息的类型查找灰度发布顺序表之前,进一步包括:判断所述用户是否为允许发布新版本软件的用户,如果是,则继续执行所述根据请求消息类型查找灰度发布顺序表的步骤;否则,控制该请求消息访问所述软件的旧版本。如图3为本专利技术第二种灰度发布实现方式的流程图。此外,上述过程中,判断用户是否为允许发布新版本软件的用户的方式可以为:判断用户的号码是否属于允许发布新版本软件的用户号码段;或者,判断用户的号码是否为允许发布新版本软件的测试用户号码。这种方式可以将灰度发布的控制粒度减小到单个用户,从而进一步降低灰度发布的风险。以下举具体的实施例对本专利技术做详细介绍。在以下的实施例中,需要进行新版本软件发布的服务器称为实际服务器,由中间层的代理转发服务器实现该软件的灰度发布。实施例一:本实施例依据用户请求消息的类型进行灰度发布。在本实施例中,代理转发服务器预先保存灰度发布顺序表,灰度发布顺序表中包括不同类型请求消息的灰度发布顺序、以及允许发布新版本软件的请求消息类型。如下表I为本实施例中的灰度发布顺序表示例,在该表中,按照灰度发布顺序,请求消息的类型从前到后依次为:查询、下载、更新、删除和上传;在初始状态下,允许发布新版本软件的请求消息为查询请求消息。本文档来自技高网...

【技术保护点】
一种灰度发布方法,其特征在于,所述方法包括:A、预先保存灰度发布顺序表,所述灰度发布顺序表包括不同类型请求消息的灰度发布顺序以及允许发布新版本软件的请求消息类型;B、接收用户对软件的请求消息,根据该请求消息的类型查找所述灰度发布顺序表,当所述请求消息的类型为允许发布新版本软件的请求消息类型时,控制该请求消息访问所述软件的新版本;否则,控制该请求消息访问所述软件的旧版本。

【技术特征摘要】
1.一种灰度发布方法,其特征在于,所述方法包括: A、预先保存灰度发布顺序表,所述灰度发布顺序表包括不同类型请求消息的灰度发布顺序以及允许发布新版本软件的请求消息类型; B、接收用户对软件的请求消息,根据该请求消息的类型查找所述灰度发布顺序表,当所述请求消息的类型为允许发布新版本软件的请求消息类型时,控制该请求消息访问所述软件的新版本;否则,控制该请求消息访问所述软件的旧版本。2.根据权利要求1所述的方法,其特征在于,所述步骤B之后进一步包括: C、针对一种请求消息类型,当采用该类型的请求消息访问软件新版本的用户数量大于预先设定的门限值、并且访问过程没有出现异常时,按照所述灰度发布顺序表中不同类型请求消息的灰度发布顺序,将所述类型之后的类型设置为允许发布新版本软件的请求消息类型;然后继续执行步骤B,如此循环。3.根据权利要求1所述的方法,其特征在于,当请求消息的类型为允许发布新版本软件的请求消息类型时,在所述控制请求消息访问软件的新版本之前,进一步包括: 判断所述用户是否为允许发布新版本软件的用户,如果是,则继续执行所述控制请求消息访问软件的新版本的步骤;否则,控制该请求消息访问所述软件的旧版本。4.根据权利要求1所述的方法,其特征在于,在所述接收用户对软件的请求消息之后,并在根据该请求消息的类型查找灰度发布顺序表之前,进一步包括: 判断所述用户是否为允许发布新版本软件的用户,如果是,则继续执行所述根据请求消息的类型查找灰度发布顺序表的步骤;否则,控制该请求消息访问所述软件的旧版本。5.根据权利要求3 或4所述的方法,其特征在于,所述判断用户是否为允许发布新版本软件的用户的方式为: 判断所述用户的号码是否为允许发布新版本软件的用户号码,或者,判断所述用户的号码是否属于允许发布新版本软件的用户...

【专利技术属性】
技术研发人员:黎文彦孟岸
申请(专利权)人:深圳市腾讯计算机系统有限公司
类型:发明
国别省市:

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

1