一种微服务部署方法、设备及介质技术

技术编号:31234411 阅读:14 留言:0更新日期:2021-12-08 10:14
本申请公开了一种微服务部署方法、设备及介质,用以解决现有的微服务部署方法大部分是人为操作,较易出错的技术问题。其中,分别确定各微服务对应的多个应用程序接口,及各应用程序接口对应的统一资源定位路径;基于待配置的Nginx配置文件,根据各应用程序接口对应的统一资源定位路径,配置针对各应用程序接口的匹配路径;并配置用于提供微服务的各上游服务器,以得到针对各微服务的Nginx配置文件模板;将Nginx配置文件模板,以及各微服务的上游服务器的地址及端口号添加至对应的GUI界面中,以生成可执行的Nginx配置文件;运行可执行的Nginx配置文件,验证各微服务对应的后端服务是否响应;在各微服务对应的后端服务均响应的情况下,确定微服务部署成功。确定微服务部署成功。确定微服务部署成功。

【技术实现步骤摘要】
一种微服务部署方法、设备及介质


[0001]本申请涉及微服务
,尤其涉及一种微服务部署方法、设备及介质。

技术介绍

[0002]微服务是一种开发软件的架构和组织方法,将应用程序构建为独立的组件,并将每个应用程序进程作为一项服务运行,各服务通过明确定义的轻量级应用程序接口(Application Programming Interface,API)进行通信,从而使得应用程序更易于扩展和更快地开发。
[0003]随着企业软件的发展,对软件高可用高并发零停机的要求越来越多,同时也对微服务的应用提出了更高的要求。但是,目前传统的微服务部署方法需要技术人员手工在命令行进行部署,部署过程繁琐,效率低,易出错。

技术实现思路

[0004]本申请实施例提供了一种微服务部署方法、设备及介质,用以解决现有的微服务部署方法大部分是人为操作,较易出错的技术问题。
[0005]本申请实施例提供了一种微服务部署方法,包括:分别确定各微服务对应的多个应用程序接口,及各应用程序接口对应的统一资源定位路径;基于待配置的Nginx配置文件,根据各应用程序接口对应的统一资源定位路径,配置针对各应用程序接口的匹配路径;并配置用于提供微服务的各上游服务器,以得到针对各微服务的Nginx配置文件模板;基于预设的GUI程序,将Nginx配置文件模板,以及各微服务的上游服务器的地址及端口号添加至对应的GUI界面中,以生成可执行的Nginx配置文件;运行可执行的Nginx配置文件,验证各微服务对应的后端服务是否响应;在各微服务对应的后端服务均响应的情况下,确定微服务部署成功。
[0006]在本申请的一种实现方式中,根据多个应用程序接口对应的统一资源定位路径,配置针对各应用程序接口的匹配路径,具体包括:确定各应用程序接口对应的统一资源定位路径的前缀;将前缀从起始位置起连续且相同的部分作为最小前缀,并将最小前缀添加至待配置的Nginx配置文件中,生成对应的匹配路径,以通过匹配路径定位各应用程序接口对应的微服务。
[0007]在本申请的一种实现方式中,配置用于提供微服务的各上游服务器,具体包括:确定用于提供微服务的上游服务器的全局唯一名称;根据全局唯一名称,确定各微服务的上游服务器对应的反向代理路径,以便于通过反向代理路径定位相应的上游服务器。
[0008]在本申请的一种实现方式中,生成可执行的Nginx配置文件之后,方法还包括:通过正则表达式,依次与可执行的Nginx配置文件中的匹配路径进行匹配,以通过匹配路径确定对应的上游服务器地址列表;对上游服务器地址列表中的地址与GUI界面中添加的地址进行一致性校验。
[0009]在本申请的一种实现方式中,验证各微服务对应的后端服务是否响应,具体包括:
基于可执行的Nginx配置文件中设置的监听地址,验证各微服务对应的统一资源定位路径是否连通;若连通,通过统一资源定位路径定位到对应的微服务,以确定微服务的后端服务响应。
[0010]在本申请的一种实现方式中,分别确定各微服务对应的多个应用程序接口之前,方法还包括:获取待配置的Nginx配置文件,并对待配置的Nginx配置文件中的HTTP模块及Server模块进行安全加固。
[0011]在本申请的一种实现方式中,确定微服务部署成功之后,方法还包括:确定主Nginx服务器对应的公网虚拟IP地址;其中,主Nginx服务器与可执行的Nginx配置文件相对应;在主Nginx服务器发生故障的情况下,调用热备Nginx服务器接管公网虚拟IP地址,并通过热备Nginx服务器对应的Nginx配置文件部署各微服务。
[0012]在本申请的一种实现方式中,方法还包括:在微服务发生异常的情况下,基于可执行的Nginx配置文件,更新微服务对应的上游服务器;在微服务需进行安全升级的情况下,修改Nginx配置文件模板,以使微服务对应的上游服务器信息重新融合。
[0013]本申请实施例还提供了一种微服务部署设备,设备包括:处理器;及存储器,其上存储有可执行代码,当可执行代码被执行时,使得处理器执行如上述的微服务部署方法。
[0014]本申请实施例还提供了一种微服务部署非易失性计算机存储介质,存储有计算机可执行指令,计算机可执行指令设置为:如上述任一项的微服务部署方法。
[0015]本申请实施例提供的一种微服务部署方法、设备及介质,至少具备以下有益效果:集成不同微服务的设置,并将其融合到同一配置文件中去,提高了交付效率和产品稳定性、安全性,在实现微服务部署的基础上,还能够减少错误率,避免命令行部署下的输入错误;通过Nginx服务器,接收客户端请求并对其进行转发处理,实现了微服务的负载均衡及反向代理;通过GUI界面自动生成针对不同微服务的连接配置,且可以自行检查是否存在配置异常情况,实现了快速可靠的微服务部署。
附图说明
[0016]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0017]图1为本申请实施例提供的一种微服务部署方法的流程图;
[0018]图2为本申请实施例提供的一种微服务部署设备的结构示意图。
具体实施方式
[0019]为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0020]API可作为微服务应用程序,用户通过统一入口即可访问相应的微服务。Nginx(engine x)作为高性能、轻量级反向代理和负载均衡服务器,具有处理API所需的HTTP功能,同时还具有反向代理和负载均衡的功能。本申请实施例通过配置统一的Nginx配置文件完成多个微服务的部署,以实现多个微服务的调用。
[0021]下面通过附图对本申请实施例提出的技术方案进行详细的说明。
[0022]图1为本申请实施例提供的一种微服务部署方法的流程图。如图1所示,本申请实施例提供的微服务部署方法可以主要包括以下步骤:
[0023]S101、服务器分别确定各微服务对应的多个应用程序接口,及各应用程序接口对应的统一资源定位路径。
[0024]服务器确定各微服务分别对应的API及各API对应的统一资源定位路径(Uniform Resource Locator,URL),以通过在Nginx配置文件中添加URL去定位相应的微服务API。各API都有其特定的路径特点,因此,当客户端请求相应的应用程序接口功能时,通过其对应的URL便可实现功能的定位。
[0025]在一个实施例中,在确定微服务对应的API之前,服务器需获取到待配置的Nginx配置文件,然后对待配置的Nginx配置文件中的HTTP模块及Server模块进行安全加本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种微服务部署方法,其特征在于,所述方法包括:分别确定各微服务对应的多个应用程序接口,及各所述应用程序接口对应的统一资源定位路径;基于待配置的Nginx配置文件,根据各所述应用程序接口对应的统一资源定位路径,配置针对各所述应用程序接口的匹配路径;并配置用于提供所述微服务的各上游服务器,以得到针对各所述微服务的Nginx配置文件模板;基于预设的GUI程序,将所述Nginx配置文件模板,以及各所述微服务的上游服务器的地址及端口号添加至对应的GUI界面中,以生成可执行的Nginx配置文件;运行所述可执行的Nginx配置文件,验证各所述微服务对应的后端服务是否响应;在各所述微服务对应的后端服务均响应的情况下,确定所述微服务部署成功。2.根据权利要求1所述的一种微服务部署方法,其特征在于,根据所述多个应用程序接口对应的统一资源定位路径,配置针对各所述应用程序接口的匹配路径,具体包括:确定各所述应用程序接口对应的统一资源定位路径的前缀;将所述前缀从起始位置起连续且相同的部分作为最小前缀,并将所述最小前缀添加至所述待配置的Nginx配置文件中,生成对应的匹配路径,以通过所述匹配路径定位各所述应用程序接口对应的微服务。3.根据权利要求1所述的一种微服务部署方法,其特征在于,针对各微服务,配置用于提供所述微服务的各上游服务器,具体包括:确定用于提供所述微服务的上游服务器的全局唯一名称;根据所述全局唯一名称,确定各所述微服务的上游服务器对应的反向代理路径,以便于通过所述反向代理路径定位相应的上游服务器。4.根据权利要求2所述的一种微服务部署方法,其特征在于,生成可执行的Nginx配置文件之后,所述方法还包括:通过正则表达式,依次与所述可执行的Nginx配置文件中的匹配路径进行匹配,以通过所述匹配路径确定对应的上游服务器地址列表;对所述上游服务器地址列表中的地址与所述GUI界面中添加的地址进行一致...

【专利技术属性】
技术研发人员:赵本帅周斐
申请(专利权)人:山东浪潮通软信息科技有限公司
类型:发明
国别省市:

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

1