一种服务管理方法、系统及装置制造方法及图纸

技术编号:35941021 阅读:14 留言:0更新日期:2022-12-14 10:29
本申请实施例提供一种服务管理方法、系统及装置,用以提高微服务的部署效率,以及实现服务版本的无感知切换。该方法包括:第一部署服务器获取第一安装包和第一镜像包;第一部署服务器基于第一镜像包创建第一容器以及将第一安装包挂载到第一容器;启动第一容器,将第一安装包安装在第一容器中;第一部署服务器向版本切换服务器发送第一切换请求,版本切换服务器接收第一切换请求;版本切换服务器响应于第一切换请求,将第一版本的服务信息加入候选服务队列;版本切换服务器从有效服务列表L中确定出一个版本作为有效版本,根据有效版本对来自客户端的第一API进行分发。来自客户端的第一API进行分发。来自客户端的第一API进行分发。

【技术实现步骤摘要】
一种服务管理方法、系统及装置


[0001]本申请涉及计算机
,并具体涉及到一种服务管理方法、系统及装置。

技术介绍

[0002]微服务是一种云原生架构方法,它强调单个应用程序由许多松散耦合且可独立部署的小服务组成,每个小服务运行在独立的进程中,小服务之间采用轻量级的通信机制进行沟通。
[0003]现有技术中,部署微服务的操作流程繁琐,其中许多流程需要人工操作,导致部署效率低下,版本切换方案存在感知。

技术实现思路

[0004]本申请实施例提供一种服务管理方法、系统及装置,用以提高微服务的部署效率,以及实现服务版本的无感知切换。
[0005]第一方面,本申请提供一种服务管理方法,包括:版本切换服务器接收至少一个切换请求,至少一个切换请求中包括第一切换请求,第一切换请求用于请求版本切换服务器将客户端从第二版本的服务切换至第一版本的服务,第二版本为客户端当前使用的服务的版本,第一切换请求中携带第一版本的服务信息,第一版本的服务和第二版本的服务属于预设服务的不同版本;版本切换服务器响应于第一切换请求,将第一版本的服务信息加入候选服务队列,其中候选服务队列中含有至少一个版本的服务信息,至少一个版本包括第二版本;服务信息包括版本号;版本切换服务器从有效服务列表L中确定出一个版本作为有效版本,版本切换服务器根据有效版本对来自客户端的第一应用程序编程接口(Application Program Interface,API)API进行分发,其中所述有效服务列表L根据所述候选服务队列确定。
[0006]在本方案中,版本切换服务器接收第一切换请求后,将第一切换请求的服务信息加入候选服务队列,使得第一版本的服务可以作为候选服务,有机会被为版本切换服务器选中进而为客户端提供服务。例如,版本切换服务器可以将来自客户端的第一API分发到有效版本所在的部署服务器上,实现客户端服务版本的切换。同时,版本切换服务器根据有效版本对来自客户端的API自动进行分发,避免了版本切换过程中暂停旧版本带来的服务中断,实现了版本的无感切换。
[0007]可选的,所述接收至少一个切换请求,包括:版本切换服务器接收来自部署服务器的所述第一切换请求,其中所述第一切换请求是所述部署服务器将所述第一版本的服务部署在所述部署服务器的容器后,向所述版本切换服务器发送的。
[0008]通过本方式,版本切换服务器接收来自部署服务器的第一切换请求,保证版本服务器切换过程中的完整性与合理性。
[0009]可选的,版本切换服务器上有映射表,映射表用于维护任务号和版本号的映射关系;第一API属于第一任务,第一任务的任务号为第一任务号;有效版本为第一版本,则版本
切换服务器根据有效版本对第一API进行分发,包括:版本切换服务器在映射表中查询第一任务号;若映射表中没有所述第一任务号,则版本切换服务器将第一API分发到有效版本所在的部署服务器上;并在映射表中新增第一任务号与有效版本的版本号的映射关系;或者,若映射表中有第一任务号,且映射表中第一任务号对应的版本号为不同于有效版本的其它版本号,则版本切换服务器将第一API分发到其它版本所在的部署服务器上。
[0010]通过本方式,可以保证版本服务器将属于同一个任务的所有API分发到了同一个版本所在的部署服务器上,避免同一任务的不同API分发到不同版本的服务导致任务的数据错乱、导致任务失败等问题。
[0011]可选的,在所述版本切换服务器将所述第一API分发到所述有效版本所在的部署服务器上之后,还包括:所述版本切换服务器向所述部署服务器发送第一切换响应,所述第一切换响应用于指示所述客户端已切换至所述第一版本的服务。
[0012]通过本方式,版本切换服务器在将第一API分发到第一版本的服务后,向部署服务器发送第一切换响应,指示客户端已切换至第一版本的服务,可以提高方案的可靠性。
[0013]可选的,在版本切换服务器将第一API分发到其它版本所在的部署服务器上之后,该方法还包括:待所述第一任务中的所有API被执行完之后,使所述其它版本无效。
[0014]通过本方式,当旧版本(如第二版本)服务不再被客户端请求后(无流量)才将旧版本(如第二版本)服务设置为无效,保证版本切换过程中用户的服务不会中断,对用户实现无感切换服务版本。
[0015]第二方面,本申请提供一种服务管理方法,包括:
[0016]部署服务器获取第一安装包和第一镜像包,第一安装包和第一镜像包为第一版本的服务的安装包和镜像包;部署服务器基于第一镜像包创建第一容器以及将第一安装包挂载到第一容器;启动第一容器,将第一安装包安装在第一容器中;部署服务器向版本切换服务器发送第一切换请求,第一切换请求用于请求版本切换服务器将客户端从第二版本的服务切换至第一版本的服务,第二版本为客户端当前使用的服务的版本,第一切换请求中携带第一版本的服务信息,第一版本的服务和第二版本的服务属于预设服务的不同版本。
[0017]可以理解的,本文所述的服务包括但不限于是微服务。
[0018]在本方案中,部署服务器获取第一安装包和第一镜像包,将第一版本的服务安装在容器中,并向版本切换服务器发起切换请求,可以实现微服务的自动部署,可以提高部署效率,降低人力成本。
[0019]可选的,在部署服务器获取第一安装包和第一镜像包之前,还包括:部署服务器根据预设服务对安装环境的要求,下载部署检查工具;部署服务器基于部署检查工具检查部署服务器的硬件配置和/或检查软件配置是否正常;部署服务器获取第一安装包和第一镜像包,包括:部署服务器的硬件配置和/或检查软件配置正常时,部署服务器获取第一安装包和第一镜像包。
[0020]通过本方式,部署服务器根据预设服务对安装环境的要求,下载部署检查工具,检查部署服务器的各项配置,保证部署服务器可以正常获取第一安装包和第一镜像包,提高了部署过程的稳定性。
[0021]可选的,部署服务器获取第一安装包和第一镜像包,包括:部署服务器按照设定的时间间隔周期性地从版本控制服务器(Subversion,SVN)中获取安装包和从镜像仓库服务
器获取镜像包;其中,所述第一安装包和所述第一镜像包为所述部署服务器最近一次获取的安装包和镜像包。
[0022]通过本方式,部署服务器定期从版本控制服务器中获取安装包和从镜像仓库服务器获取镜像包,可以减少获取安装包和镜像包的耗时,加快服务的自动化部署。
[0023]可选的,启动第一容器,包括:执行第一容器的入口点(entrypoint)里的控制命令,控制命令用于安装第一安装包以及启动第一版本的服务。
[0024]通过本方式,通过添加控制命令即可启动第一容器进而实现第一安装包的自动安装以及第一版本的服务的自动开启,操作方便,效率高。
[0025]可选的,第一安装包包括:第一代码和第一测试用例;第一镜像包包括:第一镜像;第一代码用于实现所述预设服务的功能,第一测试用例用来测试第一镜像和第一代码,其中第一镜像是运行第本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种服务管理方法,其特征在于,所述方法应用于版本切换服务器,包括:接收至少一个切换请求,所述至少一个切换请求中包括第一切换请求,所述第一切换请求用于请求所述版本切换服务器将客户端从第二版本的服务切换至第一版本的服务,所述第二版本为所述客户端当前使用的服务的版本,所述第一切换请求中携带所述第一版本的服务信息,所述第一版本的服务和所述第二版本的服务属于预设服务的不同版本;响应于所述第一切换请求,将所述第一版本的服务信息加入候选服务队列,其中所述候选服务队列中含有至少一个版本的服务信息,所述至少一个版本包括所述第二版本;所述服务信息包括版本号;从有效服务列表L中确定出一个版本作为有效版本,根据所述有效版本对来自客户端的第一应用程序编程接口API进行分发,其中所述有效服务列表L根据所述候选服务队列确定。2.如权利要求1所述的方法,其特征在于,所述接收至少一个切换请求,包括:接收来自部署服务器的所述第一切换请求,其中所述第一切换请求是所述部署服务器将所述第一版本的服务部署在所述部署服务器的容器后,向所述版本切换服务器发送的。3.如权利要求1所述的方法,其特征在于,所述版本切换服务器上有映射表,所述映射表用于维护任务号和版本号的映射关系;所述第一API属于第一任务,所述第一任务的任务号为第一任务号;所述有效版本为所述第一版本,则所述根据所述有效版本对所述第一API进行分发,包括:在所述映射表中查询所述第一任务号;若映射表中没有所述第一任务号,则将所述第一API分发到所述有效版本所在的部署服务器上;并在所述映射表中新增所述第一任务号与所述有效版本的版本号的映射关系;或者,若映射表中有所述第一任务号,且所述映射表中所述第一任务号对应的版本号为不同于所述有效版本的其它版本号,则将所述第一API分发到所述其它版本所在的部署服务器上。4.如权利要求3所述的方法,其特征在于,在所述将所述第一API分发到所述有效版本所在的部署服务器上之后,还包括:向所述部署服务器发送第一切换响应,所述第一切换响应用于指示所述客户端已切换至所述第一版本的服务。5.如权利要求3所述的方法,其特征在于,在所述将所述第一API分发到所述其它版本所在的部署服务器上之后,所述方法还包括:待所述第一任务中的所有API被执行完之后,使所述其它版本无效。6.一种服务管理系统,其特征在于,包括:部署服务器,用于获取第一安装包和第一镜像包,所述第一安装包和所述第一镜像包为第一版本的...

【专利技术属性】
技术研发人员:易冠先陈波扬王康殷俊
申请(专利权)人:浙江大华技术股份有限公司
类型:发明
国别省市:

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

1