灰度发布的方法及设备技术

技术编号:14147060 阅读:91 留言:0更新日期:2016-12-11 04:11
申请提供一种灰度发布的方法及设备,包括:根据每个服务器的灰度发布任务的执行进度和每个灰度发布任务的分发批次,从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送。本申请可达到多个任务执行路径可以同时并发进行灰度发布的效果,即在一个或者多个灰度发布任务执行中时,可再加入新的灰度发布请求,按分发批次选择最优的任务执行路径,同时保证任务与任务之间相互不干扰,大大加快了分发配置的速度。

【技术实现步骤摘要】

本申请涉及通信及计算机领域,尤其涉及一种灰度发布的方法及设备
技术介绍
数据库管理员(DataBASE Administrator,简称DBA)在灰度发布时,因涉及的业务线广泛,不仅需要分发的任务多,而且受管理的服务器数量庞大,每次分发任务执行时,因灰度发布需要分批验证,时间较长,如果这时还有其他的分发任务,不能多任务并发,通常只能采用如下两种串行的分发方式进行发布:(1)等上一个分发任务完成并验证通过后,再来执行下一个分发任务;(2)在发布之前需要收集所有发布请求并进行合并,一旦合并完成并开始发布后,无法在中途再加其他发布请求,除非上一次任务发布完成并确认后再发布新的请求,或者回退至上一个正在执行的灰度任务,再把新请求重新合并后发布。但是,上述串行的分发方式存在效率低下的问题。
技术实现思路
本申请的目的是提供一种灰度发布的方法及设备,能够实现多个任务执行路径可以同时并发进行灰度发布。有鉴于此,本申请提供一种灰度发布的方法,将新的灰度发布任务和旧的灰度发布任务的配置项存放于目录中,其中,所述新的灰度发布任务和旧的灰度发布任务经冲突检查合格;根据目录及其配置项生成新的和旧的灰度发布任务的所有候选的任务执行路径;根据每个服务器的灰度发布任务的执行进度和每个灰度发布任务的分发批次,从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送,其中,所述元数据包括服务器地址、该服务器对应使用的目录和相应的配置项的编号。进一步的,上述方法中,从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送之后,还包括:每个服务器根据接收到的所述元数据完成配置。进一步的,上述方法中,当新的和旧的灰度发布任务是修改原始的目录中的配置项时,将新的和旧的灰度发布任务的配置项存放于目录中,包括:每有一个新的灰度发布任务,则复制一个原始的目录作为新的目录,根据每个灰度发布任务对相应新的目录中的待修改配置项进行修改,得到修改后的配置项;从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送中,所述元数据包括服务器地址、该服务器对应使用的新的目录和该新的目录中相应的修改后的配置项的编号。进一步的,上述方法中,每个服务器根据接收到的所述元数据完成配置之后,还包括:备份原始的目录和所有新的目录后删除该原始的目录和所有新的目录;以所有新的目录的合并作为新的原始的目录;修改元数据,所述元数据包括服务器地址、该服务器对应使用的新的原始的目录和该新的原始的目录中相应的修改后的配置项的编号。进一步的,上述方法中,从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送的同时,所述方法还包括:暂停向服务器发送元数据;修改元数据至不包含待回退的灰度发布任务的状态后,将修改后的元数
据向对应服务器发送;若某个服务器根据原先接收到的所述元数据已经完成配置,则该服务器根据接收到的修改后的元数据完成回退配置。进一步的,上述方法中,当新的和旧的灰度发布任务是增加原始的目录中的配置项时,将新的灰度发布任务和旧的灰度发布任务的配置项存放于目录中,包括:每有一个新的旧的灰度发布任务,则根据每个灰度发布任务将待增加的配置项加入所述原始的目录中;从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送中,所述元数据包括服务器地址、该服务器使用的原始的目录和该原始的目录中相应的待增加配置项的编号。进一步的,上述方法中,每有一个新的旧的灰度发布任务,则根据每个灰度发布任务将待增加的配置项加入所述原始的目录中之前,还包括:备份原始的目录。进一步的,上述方法中,从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送的同时,所述方法还包括:暂停向服务器发送元数据;在原始的目录中添加一个对应于原先新增的配置项的反安装配置项,所述反安装配置项用于删除该目录中对应的原先新增的配置项;修改元数据并向对应服务器发送,修改后的元数据包括服务器地址、该服务器使用的原始的目录和该原始的目录中替换原先新增的配置编号的反安装配置项的编号;若某个服务器根据原先接收到的所述元数据已经完成配置,则该服务器根据接收到的修改后的元数据完成回退配置。进一步的,上述方法中,服务器根据接收到的修改后的元数据完成回退
配置之后,还包括:备份原始的目录中的原先新增的配置项和对应的反安装配置项后,删除该原先新增的配置项和对应的反安装配置项,删除元数据中的反安装配置项的编号。进一步的,上述方法中,当新的和旧的灰度发布任务是删除原始的目录中的配置项时,将新的灰度发布任务和旧的灰度发布任务的配置项存放于目录中,包括:每有一个新旧的灰度发布任务,则根据每个灰度发布任务在原始的目录中分别对应增加一个反安装配置项,所述反安装配置项用于删除该目录中对应的待删除的配置项;从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送中,所述元数据包括服务器地址、该服务器使用的原始的目录和该原始的目录中替换待删除的配置项的编号的反安装配置项的编号。进一步的,上述方法中,每有一个新旧的灰度发布任务,则根据每个灰度发布任务在原始的目录中分别对应增加一个反安装配置项之前,还包括:备份原始的目录。进一步的,上述方法中,每个服务器根据接收到的所述元数据完成配置的步骤之后,还包括:备份原始的目录中的待删除的配置项和对应的反安装配置项后,将待删除的配置项和对应反安装配置项从原始的目录中删除;将元数据中的每个服务器对应使用的原始的目录中反安装配置项的对应配置项的编号删除。进一步的,上述方法中,从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送的同时,还包括:暂停向服务器发送元数据;在原始的目录中添加一个对应于原先的反安装配置项的新增的配置项;修改元数据并向对应服务器发送,修改后的元数据包括服务器地址、该服务器使用的原始的目录和该原始的目录中替换原先的反安装配置项的编号的新增的配置项的编号;若某个服务器根据原先接收到的所述元数据已经完成配置,则该服务器根据接收到的修改后的元数据完成回退配置。进一步的,上述方法中,服务器根据接收到的修改后的元数据完成回退配置之后,还包括:删除所述原始的目录中的原先的反安装配置项。根据本申请的另一面不提供一种灰度发布的设备,包括:第一装置,用于将新的灰度发布任务和旧的灰度发布任务的配置项存放于目录中,其中,所述新的灰度发布任务和旧的灰度发布任务经冲突检查合格;第二装置,用于根据目录及其配置项生成新的和旧的灰度发布任务的所有候选的任务执行路径;第三装置,用于根据每个服务器的灰度发布任务的执行进度和每个灰度发布任务的分发批次,从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送,其中,所述元数据包括服务器地址、该服务器对应使用的目录和相应的配置项的编号。进一步的,上述设备中,所述设备还包括:第四装置,用于在所述第三装置执行之后,控制每个服务器根据其接收到的所述元数据完成配置。进一步的,上述设备中,当新的和旧的灰度发布任务是修改原始的目录中的配置项时,所述第一装置,本文档来自技高网
...
灰度发布的方法及设备

【技术保护点】
一种灰度发布的方法,其中,包括:将新的灰度发布任务和旧的灰度发布任务的配置项存放于目录中,其中,所述新的灰度发布任务和旧的灰度发布任务经冲突检查合格;根据目录及其配置项生成新的和旧的灰度发布任务的所有候选的任务执行路径;根据每个服务器的灰度发布任务的执行进度和每个灰度发布任务的分发批次,从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送,其中,所述元数据包括服务器地址、该服务器对应使用的目录和相应的配置项的编号。

【技术特征摘要】
1.一种灰度发布的方法,其中,包括:将新的灰度发布任务和旧的灰度发布任务的配置项存放于目录中,其中,所述新的灰度发布任务和旧的灰度发布任务经冲突检查合格;根据目录及其配置项生成新的和旧的灰度发布任务的所有候选的任务执行路径;根据每个服务器的灰度发布任务的执行进度和每个灰度发布任务的分发批次,从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送,其中,所述元数据包括服务器地址、该服务器对应使用的目录和相应的配置项的编号。2.如权利要求1所述的方法,其中,从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送之后,还包括:每个服务器根据接收到的所述元数据完成配置。3.如权利要求2所述的方法,其中,当新的和旧的灰度发布任务是修改原始的目录中的配置项时,将新的和旧的灰度发布任务的配置项存放于目录中,包括:每有一个新的灰度发布任务,则复制一个原始的目录作为新的目录,根据每个灰度发布任务对相应新的目录中的待修改配置项进行修改,得到修改后的配置项;从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送中,所述元数据包括服务器地址、该服务器对应使用的新的目录和该新的目录中相应的修改后的配置项的编号。4.如权利要求3所述的方法,其中,每个服务器根据接收到的所述元数据完成配置之后,还包括:备份原始的目录和所有新的目录后删除该原始的目录和所有新的目录;以所有新的目录的合并作为新的原始的目录;修改元数据,所述元数据包括服务器地址、该服务器对应使用的新的原始的目录和该新的原始的目录中相应的修改后的配置项的编号。5.如权利要求3所述的方法,其中,从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送的同时,所述方法还包括:暂停向服务器发送元数据;修改元数据至不包含待回退的灰度发布任务的状态后,将修改后的元数据向对应服务器发送;若某个服务器根据原先接收到的所述元数据已经完成配置,则该服务器根据接收到的修改后的元数据完成回退配置。6.如权利要求2所述的方法,其中,当新的和旧的灰度发布任务是增加原始的目录中的配置项时,将新的灰度发布任务和旧的灰度发布任务的配置项存放于目录中,包括:每有一个新的旧的灰度发布任务,则根据每个灰度发布任务将待增加的配置项加入所述原始的目录中;从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送中,所述元数据包括服务器地址、该服务器使用的原始的目录和该原始的目录中相应的待增加配置项的编号。7.如权利要求6所述的方法,其中,每有一个新的旧的灰度发布任务,则根据每个灰度发布任务将待增加的配置项加入所述原始的目录中之前,还包括:备份原始的目录。8.如权利要求6所述的方法,其中,从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送的同时,所述方法还包括:暂停向服务器发送元数据;在原始的目录中添加一个对应于原先新增的配置项的反安装配置项,所述反安装配置项用于删除该目录中对应的原先新增的配置项;修改元数据并向对应服务器发送,修改后的元数据包括服务器地址、该服务器使用的原始的目录和该原始的目录中替换原先新增的配置编号的反安装配置项的编号;若某个服务器根据原先接收到的所述元数据已经完成配置,则该服务器根据接收到的修改后的元数据完成回退配置。9.如权利要求8所述的方法,其中,服务器根据接收到的修改后的元数据完成回退配置之后,还包括:备份原始的目录中的原先新增的配置项和对应的反安装配置项后,删除该原先新增的配置项和对应的反安装配置项,删除元数据中的反安装配置项的编号。10.如权利要求2所述的方法,其中,当新的和旧的灰度发布任务是删除原始的目录中的配置项时,将新的灰度发布任务和旧的灰度发布任务的配置项存放于目录中,包括:每有一个新旧的灰度发布任务,则根据每个灰度发布任务在原始的目录中分别对应增加一个反安装配置项,所述反安装配置项用于删除该目录中对应的待删除的配置项;从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送中,所述元数据包括服务器地址、该服务器使用的原始的目录和该原始的目录中替换待删除的配置项的编号的反安装配置项的编号。11.如权利要求10所述的方法,其中,每有一个新旧的灰度发布任务,则根据每个灰度发布任务在原始的目录中分别对应增加一个反安装配置项之前,还包括:备份原始的目录。12.如权利要求10所述的方法,其中,每个服务器根据接收到的所述元数据完成配置的步骤之后,还包括:备份原始的目录中的待删除的配置项和对应的反安装配置项后,将待删除的配置项和对应反安装配置项从原始的目录中删除;将元数据中的每个服务器对应使用的原始的目录中反安装配置项的对应配置项的编号删除。13.如权利要求10所述的方法,其中,从所有候选的任务执行路径中选择最优的任务执行路径作为修改后的元数据向对应服务器发送的同时,还包括:暂停向服务器发送元数据;在原始的目录中添加一个对应于原先的反安装配置项的新增的配置项;修改元数据并向对应服务器发送,修改后的元数据包括服务器地址、该服务器使用的原始的目录和该原始的目录中替换原先的反安装配置项的编号的新增的配...

【专利技术属性】
技术研发人员:朱曜鑫雷鹏涛秦天欢
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

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

1