业务服务的更新方法及装置、电子设备和存储介质制造方法及图纸

技术编号:34899169 阅读:14 留言:0更新日期:2022-09-10 14:00
本申请实施例提供了一种业务服务的更新方法及装置、电子设备和存储介质,其中,该方法包括:配置服务器在预配置的灰度环境中部署新版本容器;配置服务器基于线上环境中旧版本容器的数量对新版本容器进行扩容,其中,扩容后的新版本容器的数量与线上环境中旧版本容器的数量匹配;配置服务器向业务服务器发送流量切换指令;业务服务器响应于流量切换指令,断开与线上环境的通信连接,并与灰度环境建立通信连接;业务服务器响应于业务服务请求,将业务服务请求转发至灰度环境,以获取灰度环境反馈的业务服务的更新数据。通过本申请,解决了现有技术中由于线上环境中的容器启动消耗时间较长,导致上线业务服务的新版本所消耗的也较长的问题。较长的问题。较长的问题。

【技术实现步骤摘要】
业务服务的更新方法及装置、电子设备和存储介质


[0001]本申请涉及数据处理
,特别是涉及一种业务服务的更新方法及装置、电子设备和存储介质。

技术介绍

[0002]随着互联网开发技术不断发展,虚拟化、容器化越来越成熟,后台服务上线也有了更稳定上线部署方案,虚拟化的方案是将硬件虚拟化后安装操作系统,在虚拟硬件上安装的操作系统能更方便的进行维护,从而使得部署在其上的服务也相比于安装在物理机上的系统更容易维护,当物理机故障时,将虚拟化系统的数据文件到另一台物理机上启动,即可恢复服务。容器化技术出现后,虚拟化系统的数据文件大小进一步减小,启动速度进一步提升,在重启容器的资源消耗中,操作系统的损耗几乎可以忽略不计。
[0003]微服务技术在容器化的基础上进一步平台化,形成了统一管理服务器资源的微服务平台,业务服务在微服务平台上注册后,上传自身容器镜像,指定需要部署的服务数量、每服务需要的CPU、内存数量,部署和上线的操作步骤都可以由微服务平台来完成,极大的简化了开发和运维工作。
[0004]当业务服务需要上线新版本时,由上线操作人员上传新版本容器镜像到线上环境中,然后在微服务平台点击更新应用。微服务平台则按既定策略,进行更新服务的更新动作。目前的既定策略有两种,一种是先逐步杀死一定比率的旧服务容器,再启动新镜像,直到所有容器都得到更新;另一种是先逐一申请一定比率的新容器资源,申请过程可能会发生排队等待,申请容器资源成功后启动新镜像,新镜像启动成功后杀死相应的旧服务容器,直到所有容器都得到更新。上述的升级过程,每一步的新容器的启动都会消耗1~3分钟时间,这个时间包含了镜像系统的启动、容器内服务启动、依赖资源包加载、配置加载解析、服务健康检查,若发生新容器资源的申请排队情况时间可能会超过5分钟。若业务服务的容器数量较大,如对50个容器服务进行更新,整体的更新时间需要10~30分钟,更新100个容器则需要更长的时间。可见,现有技术中由于线上环境中的容器启动消耗时间较长,导致上线业务服务的新版本所消耗的也较长。

技术实现思路

[0005]本申请实施例的目的在于提供一种业务服务的更新方法及装置、电子设备和存储介质,以实现将线上环境中待更新的业务服务的流量切换到灰度环境中,从而无需基于线上环境边升级容器边进行版本的更新,缩短了版本更新的时间以及提升了版本更新的效率。具体技术方案如下:
[0006]在本申请实施例的第一方面,提供了一种业务服务的更新方法,包括:配置服务器在预配置的灰度环境中部署新版本容器,其中,所述新版本容器由灰度环境中的旧版本容器升级得到;所述配置服务器基于线上环境中旧版本容器的数量对所述新版本容器进行扩容,其中,扩容后的所述新版本容器的数量与所述线上环境中旧版本容器的数量匹配;所述
灰度环境和所述线上环境相互独立;所述配置服务器向业务服务器发送流量切换指令;所述业务服务器响应于流量切换指令,断开与所述线上环境的通信连接,并与所述灰度环境建立通信连接;所述业务服务器响应于业务服务请求,将所述业务服务请求转发至所述灰度环境,以获取所述灰度环境反馈的业务服务的更新数据。
[0007]在本申请实施例的第二方面,还提供了一种业务服务的更新装置,包括:部署模块,用于在预配置的灰度环境中部署新版本容器,其中,所述新版本容器由灰度环境中的旧版本容器升级得到;扩容模块,用于基于线上环境中旧版本容器的数量对所述新版本容器进行扩容,其中,扩容后的所述新版本容器的数量与所述线上环境中旧版本容器的数量匹配;所述灰度环境和所述线上环境相互独立;发送模块,用于向业务服务器发送流量切换指令;处理模块,用于响应于流量切换指令,断开与所述线上环境的通信连接,并与所述灰度环境建立通信连接;更新模块,用于响应于业务服务请求,将所述业务服务请求转发至所述灰度环境,以获取所述灰度环境反馈的业务服务的更新数据。
[0008]在本申请实施例的第三方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的业务服务的更新方法。
[0009]在本申请实施例的第四方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的业务服务的更新方法。
[0010]在本申请实施例中,在业务服务更新的过程中涉及到相互独立的灰度环境和线上环境,配置服务器先将灰度环境中的旧版本容器更新为新版本容器,并对灰度环境中的新版本容器进行扩容,然后业务服务器基于流量切换指令建议与灰度环境的通信连接,进而基于业务服务请求获取灰度环境反馈的业务服务的更新数据,以对业务服务进行更新,即可以先对与线上环境相互独立的灰度环境中的容器版本进行更新,然后将线上环境中待更新的业务服务的流量切换到灰度环境中,从而无需基于线上环境边升级容器边进行版本的更新,缩短了版本更新的时间以及提升了版本更新的效率,从而解决了现有技术中由于线上环境中的容器启动消耗时间较长,导致上线业务服务的新版本所消耗的也较长的问题。
附图说明
[0011]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
[0012]图1为本申请实施例中业务服务的更新方法的流程图;
[0013]图2为本申请实施例中调用运维操作进行流量切换的示意图;
[0014]图3为本申请实施例中基于流量切换的微服务快速上线的示意图;
[0015]图4为本申请实施例中业务服务的更新装置的结构示意图;
[0016]图5为本申请实施例中电子设备的结构示意图。
具体实施方式
[0017]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
[0018]本申请实施例提供了一种业务服务的更新方法,如图1所示,该方法的步骤包括:
[0019]步骤102,配置服务器在预配置的灰度环境中部署新版本容器,其中,新版本容器
由灰度环境中的旧版本容器升级得到;
[0020]步骤104,配置服务器基于线上环境中旧版本容器的数量对新版本容器进行扩容,其中,扩容后的新版本容器的数量与线上环境中旧版本容器的数量匹配;灰度环境和线上环境相互独立;
[0021]其中,需要说明的是,本申请实施例中的灰度环境和线上环境可以是一个容器平台上的两个相互独立的环境。
[0022]步骤106,配置服务器向业务服务器发送流量切换指令;
[0023]步骤108,业务服务器响应于流量切换指令,断开与线上环境的通信连接,并与灰度环境建立通信连接;
[0024]步骤110,业务服务器响应于业务服务请求,将业务服务请求转发至灰度环境,以获取灰度环境反馈的业务服务的更新数据。
[0025]通过上述步骤102至步骤110可知,在业务服务更新的过程中涉及到相互独立的灰度环境和线上环境,配置服务器先将灰度环境中的旧版本容器更新为新版本容器,并对灰度环境中的新版本容器进行扩容,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种业务服务的更新方法,其特征在于,包括:配置服务器在预配置的灰度环境中部署新版本容器,其中,所述新版本容器由灰度环境中的旧版本容器升级得到;所述配置服务器基于线上环境中旧版本容器的数量对所述新版本容器进行扩容,其中,扩容后的所述新版本容器的数量与所述线上环境中旧版本容器的数量匹配;所述灰度环境和所述线上环境相互独立;所述配置服务器向业务服务器发送流量切换指令;所述业务服务器响应于流量切换指令,断开与所述线上环境的通信连接,并与所述灰度环境建立通信连接;所述业务服务器响应于业务服务请求,将所述业务服务请求转发至所述灰度环境,以获取所述灰度环境反馈的业务服务的更新数据。2.根据权利要求1所述的方法,其特征在于,所述业务服务器响应于流量切换指令,断开与所述线上环境的通信连接,并与所述灰度环境建立通信连接,包括:所述业务服务器响应于流量切换指令,将所述线上环境中所述业务服务的主机名修改为所述灰度环境中所述业务服务的主机名;所述业务服务器将所述线上环境中所述业务服务的业务服务池修改为所述灰度环境中所述业务服务的业务服务池;所述业务服务器基于所述灰度环境中所述业务服务的主机名和所述灰度环境中所述业务服务的业务服务池,与所述灰度环境建立通信连接。3.根据权利要求1所述的方法,其特征在于,所述配置服务器基于线上环境中旧版本容器的数量对所述新版本容器进行扩容包括:所述配置服务器基于所述线上环境中旧版本容器的数量配置所述灰度环境中新版本容器的数量,其中,所述灰度环境中新版本容器的数量与所述线上环境中旧版本容器的数量之间的差值的绝对值小于预设阈值。4.根据权利要求1所述的方法,其特征在于,在配置服务器在预配置的灰度环境中部署新版本容器之前,所述方法还包括:所述配置服务器获取所述线上环境中旧版本容器的容器配置;所述配置服务器基于所述线上环境中旧版本容器的容器配置建立所述灰度环境,其中,所述灰度环境中包括所述旧版本容器。5.根据权利要求1所述的方法,其特征在于,所述业务服务器响应于业务服务请求,将所述业务服务请求转发至所述灰度环境,以获取所述灰度环境反馈的业务服务的更新数据包括:在预设时长内未出现异常的...

【专利技术属性】
技术研发人员:张泽武黄凯
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:

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

1