一种服务上线方法及装置制造方法及图纸

技术编号:19026809 阅读:27 留言:0更新日期:2018-09-26 19:58
本发明专利技术实施例提供了一种服务上线方法及装置,方法包括:获得针对目标服务的预上线版本的上线请求,其中,所述上线请求为:通过预上线主机集群对所述预上线版本的测试后生成的;将目标配置文件中存储的数据替换为第一配置文件中存储的数据,其中,所述目标配置文件为针对线上版本所设置的配置文件,所述第一配置文件为针对所述预上线版本所设置的配置文件;接收到针对所述目标服务的访问请求后,基于替换后的目标配置文件,将所接收的访问请求发送至所述预上线主机集群。应用本发明专利技术实施例提供的服务上线方法,能够提高上线的效率。

【技术实现步骤摘要】
一种服务上线方法及装置
本专利技术涉及计算机
,特别是涉及一种服务上线方法及装置。
技术介绍
当前,用户在互联网上使用各种各样的服务,为了满足用户的需求,这些服务需要增加新的功能或改进现有的技术,因此需要不断地升级。在升级过程中,伴随着新旧版本兼容的风险,用户使用习惯突然改变而造成用户流失的风险,系统宕机的风险。为了避免这些风险,很多服务上线的时候都采用了灰度发布的策略,其主要思想就是把影响集中到一个点,然后再发散到一个面,出现意外情况时,很容易回退,避免造成大范围的影响。灰度发布是平滑过渡的一种发布方式。例如,ABtest(测试)就是一种灰度发布方式,可以让一部用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大B的发布范围,最终把所有用户都迁移到B上来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。需要说明的是,服务当前上线的版本是A,服务预上线版本是B。具体的,采用基于灰度发布的服务上线的方法可以为:按用户号段进行灰度发布,将所有用户按用户号段分为多个单元,服务进行新版本发布时,逐单元进行发布,从而实现服务的上线。但在这种方法中是逐个用户号段进行发布的,在用户号段设置的比较多的情况下,会导致服务从开始上线到最终完成线上的时间比较长,从而导致服务上线的效率比较低。
技术实现思路
本专利技术实施例的目的在于提供一种服务上线方法及装置,以提高上线的效率。具体技术方案如下:第一方面,为达到上述目的,本专利技术实施例公开了一种服务上线方法,所述方法包括:获得针对目标服务的预上线版本的上线请求,其中,所述上线请求为:通过预上线主机集群对所述预上线版本的测试后生成的;将目标配置文件中存储的数据替换为第一配置文件中存储的数据,其中,所述目标配置文件为针对线上版本所设置的配置文件,所述第一配置文件为针对所述预上线版本所设置的配置文件;接收到针对所述目标服务的访问请求后,基于替换后的目标配置文件,将所接收的访问请求发送至所述预上线主机集群。可选的,所述将目标配置文件中存储的数据替换为第一配置文件中存储的数据,包括:将目标配置文件中存储的第一主机标识替换为第二主机标识,其中,所述第一主机标识为所述目标配置文件中存储的第一主机的标识,所述第一主机为部署有所述线上版本的线上主机集群中的主机;所述第二主机标识为所述第一配置文件中存储的第二主机的标识,所述第二主机为所述预上线主机集群中部署有所述预上线版本且对所述预上线版本测试通过的主机。可选的,所述将目标配置文件中存储的数据替换为第一配置文件中存储的数据,包括:将目标配置文件的文件标识与第一配置文件的文件标识互换。可选的,在所述获得针对目标服务的预上线版本的上线请求之前,所述方法还包括:从目标主机集群中确定所述线上主机集群,其中,所述目标主机集群为针对所述目标服务配置的主机集群;从除所述线上主机集群之外的目标主机集群中确定所述预上线主机集群。可选的,所述目标主机集群包括至少两个主机集群;所述从目标主机集群中确定所述线上主机集群,包括:确定目标主机标识;将所述目标主机标识与每一主机集群中的每一主机的主机标识进行匹配;将主机标识与所述目标主机标识相匹配的主机所在的主机集群确定为所述上线主机集群。可选的,所述确定目标主机标识,包括:从针对目标服务的访问请求生成的日志中确定目标日志,其中,所述目标日志为针对目标服务的访问请求生成的日志中最新生成的日志;将所述目标日志中记录的目标主机的标识确定为目标主机标识,其中,所述目标主机为响应针对所述目标服务的访问请求的主机。可选的,所述确定目标主机标识,包括:接收针对所述目标服务的目标访问请求;确定用于响应所述目标访问请求的第三主机;将所述目标访问请求发送至所述第三主机;获得所述第三主机反馈的针对所述目标访问请求的响应结果;基于所获得的响应结果,生成针对所述目标访问请求的第一日志;将所述第一日志中记录的所述第三主机的标识确定为目标主机标识。可选的,所述从目标主机集群中确定所述线上主机集群,包括:接收针对所述目标服务的第一访问请求;从所述目标主机集群中确定用于响应所述第一访问请求的第四主机;向所述第四主机发送所述第一访问请求;获得所述第四主机反馈的针对所述第一访问请求的响应结果;判断所获得的响应结果是否为失败的响应结果;如果是,从所述目标主机集群中未确定为第四主机的主机中选择一个主机,将所述第四主机更新为所选择的主机,并返回执行所述向所述第四主机发送所述第一访问请求,直至所述目标主机集群中所有运行有所述线上版本的主机均被确定为第四主机;基于所获得的每一响应结果,生成针对所述第一访问请求的第二日志;确定所生成的第二日志中记录的每一第四主机的标识;将所确定的第四主机的标识对应的第四主机组成所述线上主机集群。可选的,在所述获得针对目标服务的预上线版本的上线请求之前,所述方法还包括:判断所述第一配置文件中存储的主机标识是否为所述第二主机标识;如果否,将所述第一配置文件中所存储的主机标识替换为所述第二主机标识;根据预先设置的部署策略,将所述预上线版本部署至所述预上线主机集群;通过所述预上线主机集群对所述预上线版本进行迭代回归测试,直至测试通过。第二方面,为达到上述目的,本专利技术实施例还公开了一种服务上线装置,所述装置包括:获得模块,用于获得针对目标服务的预上线版本的上线请求,其中,所述上线请求为:通过预上线主机集群对所述预上线版本的测试后生成的;第一替换模块,用于将目标配置文件中存储的数据替换为第一配置文件中存储的数据,其中,所述目标配置文件为针对线上版本所设置的配置文件,所述第一配置文件为针对所述预上线版本所设置的配置文件;发送模块,用于接收到针对所述目标服务的访问请求后,基于替换后的目标配置文件,将所接收的访问请求发送至所述预上线主机集群。可选的,所述第一替换模块,具体用于将目标配置文件中存储的第一主机标识替换为第二主机标识,其中,所述第一主机标识为所述目标配置文件中存储的第一主机的标识,所述第一主机为部署有所述线上版本的线上主机集群中的主机;所述第二主机标识为所述第一配置文件中存储的第二主机的标识,所述第二主机为所述预上线主机集群中部署有所述预上线版本且对所述预上线版本测试通过的主机。可选的,所述第一替换模块,具体用于将目标配置文件的文件标识与第一配置文件的文件标识互换。可选的,所述装置还包括:第一确定模块,用于从目标主机集群中确定所述线上主机集群,其中,所述目标主机集群为针对所述目标服务配置的主机集群;第二确定模块,用于从除所述线上主机集群之外的目标主机集群中确定所述预上线主机集群。可选的,所述目标主机集群包括至少两个主机集群;所述第一确定模块,包括:第一确定子模块,用于确定目标主机标识;匹配子模块,用于将所述目标主机标识与每一主机集群中的每一主机的主机标识进行匹配;第二确定子模块,用于将主机标识与所述目标主机标识相匹配的主机所在的主机集群确定为所述上线主机集群。可选的,所述第一确定子模块,包括:第一确定单元,用于从针对目标服务的访问请求生成的日志中确定目标日志,其中,所述目标日志为针对目标服务的访问请求生成的日志中最新生成的日志;第二确定单元,用于将所述目标日志中记录的目标主机的本文档来自技高网...

【技术保护点】
1.一种服务上线方法,其特征在于,所述方法包括:获得针对目标服务的预上线版本的上线请求,其中,所述上线请求为:通过预上线主机集群对所述预上线版本的测试后生成的;将目标配置文件中存储的数据替换为第一配置文件中存储的数据,其中,所述目标配置文件为针对线上版本所设置的配置文件,所述第一配置文件为针对所述预上线版本所设置的配置文件;接收到针对所述目标服务的访问请求后,基于替换后的目标配置文件,将所接收的访问请求发送至所述预上线主机集群。

【技术特征摘要】
1.一种服务上线方法,其特征在于,所述方法包括:获得针对目标服务的预上线版本的上线请求,其中,所述上线请求为:通过预上线主机集群对所述预上线版本的测试后生成的;将目标配置文件中存储的数据替换为第一配置文件中存储的数据,其中,所述目标配置文件为针对线上版本所设置的配置文件,所述第一配置文件为针对所述预上线版本所设置的配置文件;接收到针对所述目标服务的访问请求后,基于替换后的目标配置文件,将所接收的访问请求发送至所述预上线主机集群。2.根据权利要求1所述的方法,其特征在于,所述将目标配置文件中存储的数据替换为第一配置文件中存储的数据,包括:将目标配置文件中存储的第一主机标识替换为第二主机标识,其中,所述第一主机标识为所述目标配置文件中存储的第一主机的标识,所述第一主机为部署有所述线上版本的线上主机集群中的主机;所述第二主机标识为所述第一配置文件中存储的第二主机的标识,所述第二主机为所述预上线主机集群中部署有所述预上线版本且对所述预上线版本测试通过的主机。3.根据权利要求1所述的方法,其特征在于,所述将目标配置文件中存储的数据替换为第一配置文件中存储的数据,包括:将目标配置文件的文件标识与第一配置文件的文件标识互换。4.根据权利要求1所述的方法,其特征在于,在所述获得针对目标服务的预上线版本的上线请求之前,所述方法还包括:从目标主机集群中确定所述线上主机集群,其中,所述目标主机集群为针对所述目标服务配置的主机集群;从除所述线上主机集群之外的目标主机集群中确定所述预上线主机集群。5.根据权利要求4所述的方法,其特征在于,所述目标主机集群包括至少两个主机集群;所述从目标主机集群中确定所述线上主机集群,包括:确定目标主机标识;将所述目标主机标识与每一主机集群中的每一主机的主机标识进行匹配;将主机标识与所述目标主机标识相匹配的主机所在的主机集群确定为所述上线主机集群。6.根据权利要求5所述的方法,其特征在于,所述确定目标主机标识,包括:从针对目标服务的访问请求生成的日志中确定目标日志,其中,所述目标日志为针对目标服务的访问请求生成的日志中最新生成的日志;将所述目标日志中记录的目标主机的标识确定为目标主机标识,其中,所述目标主机为响应针对所述目标服务的访问请求的主机。7.根据权利要求5所述的方法,其特征在于,所述确定目标主机标识,包括:接收针对所述目标服务的目标访问请求;确定用于响应所述目标访问请求的第三主机;将所述目标访问请求发送至所述第三主机;获得所述第三主机反馈的针对所述目标访问请求的响应结果;基于所获得的响应结果,生成针对所述目标访问请求的第一日志;将所述第一日志中记录的所述第三主机的标识确定为目标主机标识。8.根据权利要求4所述的方法,其特征在于,所述从目标主机集群中确定所述线上主机集群,包括:接收针对所述目标服务的第一访问请求;从所述目标主机集群中确定用于响应所述第一访问请求的第四主机;向所述第四主机发送所述第一访问请求;获得所述第四主机反馈的针对所述第一访问请求的响应结果;判断所获得的响应结果是否为失败的响应结果;如果是,从所述目标主机集群中未确定为第四主机的主机中选择一个主机,将所述第四主机更新为所选择的主机,并返回执行所述向所述第四主机发送所述第一访问请求,直至所述目标主机集群中所有运行有所述线上版本的主机均被确定为第四主机;基于所获得的每一响应结果,生成针对所述第一访问请求的第二日志;确定所生成的第二日志中记录的每一第四主机的标识;将所确定的第四主机的标识对应的第四主机组成所述线上主机集群。9.根据权利要求1所述的方法,其特征在于,在所述获得针对目标服务的预上线版本的上线请求之前,所述方法还包括:判断所述第一配置文件中存储的主机标识是否为所述第二主机标识;如果否,将所述第一配置文件中所存储的主机标识替换为所述第二主机标识;根据预先设置的部署策略,将所述预上线版本部署至所述预上线主机集群;通过所述预上线主机集群对所述预上线版本进行迭代回归测试,直至测试通过。10.一种服务上线装置,其特征在于,所述装置包括:获得模块,用于获得针对目标服务的预上线版本的上线请求,其中,所述上线请求为:通过预上线主机集群对所述预上线...

【专利技术属性】
技术研发人员:蔡志强
申请(专利权)人:北京金山云网络技术有限公司北京金山云科技有限公司
类型:发明
国别省市:北京,11

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

1