[发明专利]服务更新方法、装置、服务器及介质在审
申请号: | 201911268512.5 | 申请日: | 2019-12-11 |
公开(公告)号: | CN111026425A | 公开(公告)日: | 2020-04-17 |
发明(设计)人: | 汪胜蕾 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 邢惠童 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 服务 更新 方法 装置 服务器 介质 | ||
本申请公开了一种服务更新方法、装置、服务器及计算机可读存储介质,属于网络技术领域。本申请实施例提供的技术方案,通过将待更新的服务区分为关键和非关键,从而对关键服务进行轮动更新,而对非关键服务直接进行更新,采用不同的更新方式进行服务更新,可以使得热更新场景下能够最大程度上的避免对正常服务运行造成影响,可以在保证用户无感知的情况下,完成服务的更新,还能够提高用户的使用体验。
技术领域
本申请涉及网络技术领域,特别涉及一种服务更新方法、装置、服务器及计算机可读存储介质。
背景技术
随着网络技术的发展,应用服务更新的频率也越来越高,为了在更新过程中不影响用户的正常使用,通常可以在服务器侧采用热更新的方式来进行,例如,对于一些线上游戏来说,可以在新服务集群中提供更新后的游戏服务,将用户接口层切换至已更新的新服务集群,新用户会直接接入新服务集群,再等待原服务集群上所接入的老用户自然退出。
然而,上述热更新方式需要大量的硬件资源才能实现,其成本消耗代价巨大,且老用户无法在原服务集群中使用到更新后的游戏服务,实际上并没有达到无感知更新的目的,影响正常服务的运行,也会降低用户的使用体验。
发明内容
本申请实施例提供了一种服务更新方法、装置、服务器及计算机可读存储介质,可以实现无感知的更新,避免对正常服务的运行造成影响,还能够提高用户的使用体验。所述技术方案如下:
一方面,提供了一种服务更新方法,所述方法包括:
根据待更新服务的服务类型,将所述待更新服务划分为关键服务和非关键服务;
暂停所述非关键服务的运行,对所述非关键服务进行更新;
对于所述关键服务中的任一服务,保持所述服务中一部分子服务处于运行状态,暂停所述服务中另一部分子服务的运行,对所述另一部分子服务进行更新,将更新完成的子服务切换至运行状态,对未更新的子服务继续进行更新。
一方面,提供了一种服务更新装置,其特征在于,所述装置包括:
服务划分模块,用于根据待更新服务的服务类型,将所述待更新服务划分为关键服务和非关键服务;
第一更新模块,用于暂停所述非关键服务的运行,对所述非关键服务进行更新;
第二更新模块,用于对于所述关键服务中的任一服务,保持所述服务中一部分子服务处于运行状态,暂停所述服务中另一部分子服务的运行,对所述另一部分子服务进行更新,将更新完成的子服务切换至运行状态,对未更新的子服务继续进行更新。
在一种可能实现方式中,所述第二更新模块用于:保持所述服务中属于主服务身份的子服务处于运行状态,暂停所述服务中属于备服务身份的子服务的运行。
在一种可能实现方式中,所述第二更新模块用于:对于场景服务,将第一场景服务中的用户迁移至第二场景服务,保持所述第二场景服务的运行,在迁移完成后,暂停所述第一场景服务的运行。
在一种可能实现方式中,所述第一更新模块用于:通知运行有所述非关键服务的第一服务器暂停运行,从服务路由目录中删除所述第一服务器,所述服务路由目录用于记录各个服务的服务器的路由信息;对所述第一服务器进行重启,在重启后更新所述非关键服务,当更新完成后,将更新后的第一服务器添加至所述服务路由目录中。
在一种可能实现方式中,所述装置还包括:
版本更新模块,用于当任一服务的更新过程中,在服务路由目录中更新所述服务的版本信息;访问控制模块,用于当接收到任一业务请求时,根据所述服务路由目录中所记录的版本信息对所述业务请求进行访问控制。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911268512.5/2.html,转载请声明来源钻瓜专利网。