CN108804113B - 部署微服务应用的方法、装置和存储介质以及电子设备 - Google Patents
部署微服务应用的方法、装置和存储介质以及电子设备 Download PDFInfo
- Publication number
- CN108804113B CN108804113B CN201810582843.5A CN201810582843A CN108804113B CN 108804113 B CN108804113 B CN 108804113B CN 201810582843 A CN201810582843 A CN 201810582843A CN 108804113 B CN108804113 B CN 108804113B
- Authority
- CN
- China
- Prior art keywords
- service
- calling
- application
- micro
- mode
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本公开涉及一种部署微服务应用的方法、装置和存储介质以及电子设备,该方法包括:确定待部署的微服务提供应用和微服务调用应用;在预先为所述微服务调用应用设置的组件调用方式中,获取用户确定的目标组件调用方式,所述组件调用方式包括本地调用或者远程调用;根据所述目标组件调用方式部署所述微服务提供应用和所述微服务调用应用。
Description
技术领域
本公开涉及微服务应用领域,具体地,涉及一种部署微服务应用的方法、装置和存储介质以及电子设备。
背景技术
微服务架构是一项在云中部署应用和服务的新技术,其基本思想在于考虑围绕着业务领域组件来创建应用,这些应用可独立地进行开发、管理和加速。在分散的组件中使用微服务云架构和平台,使部署、管理和服务功能交付变得更加简单。
在使用微服务架构开发项目时,一般在开发期就需要按照业务需求、投入产出、组织结构等因素将一个服务合理拆分为多个微服务,而在拆分错误或者拆分不合理时,还需要将拆分错误或者拆分不合理的微服务进行合并。
在现有技术中,微服务应用的部署(如微服务应用的拆分或者合并)都需要相关人员通过修改每个微服务应用组件的配置文件以更改组件的调用方式,从而实现微服务应用的拆分或者合并,但是,在微服务数量较多的情况下,采用人工修改的方式的工作量较大,不仅浪费大量的人工资源,而且微服务拆分或者合并不够灵活,导致微服务应用部署的效率较低。
发明内容
为了解决上述问题,本公开提供一种部署微服务应用的方法、装置和存储介质以及电子设备。
为了实现上述目的,第一方面,本公开提供一种部署微服务应用的方法,包括:确定待部署的微服务提供应用和微服务调用应用;在预先为所述微服务调用应用设置的组件调用方式中,获取用户确定的目标组件调用方式,所述组件调用方式包括本地调用或者远程调用;根据所述目标组件调用方式部署所述微服务提供应用和所述微服务调用应用。
可选地,所述微服务调用应用包括第一服务提供组件和第一服务调用组件,所述获取用户确定的目标组件调用方式包括:获取所述用户为所述第一服务提供组件选择的部署模式;根据所述部署模式确定所述第一服务调用组件的组件调用方式,得到所述目标组件调用方式。
可选地,所述微服务提供应用包括第二服务提供组件,所述根据所述部署模式确定所述第一服务调用组件的组件调用方式包括:在所述部署模式为本地模式时,确定所述第一服务调用组件的组件调用方式为本地调用,所述本地调用表示所述第一服务调用组件调用所述第一服务提供组件;在所述部署模式为远程模式时,确定所述第一服务调用组件的调用方式为远程调用,所述远程调用表示所述第一服务调用组件调用所述第二服务提供组件。
可选地,所述根据所述目标组件调用方式部署所述微服务提供应用和所述微服务调用应用包括:在所述目标组件调用方式为本地调用时,将所述微服务提供应用和微服务调用应用合并部署;在所述目标组件调用方式为远程调用时,将所述微服务提供应用和微服务调用应用拆分部署。
第二方面,本公开提供一种部署微服务应用的装置,包括:应用确定模块,用于确定待部署的微服务提供应用和微服务调用应用;调用方式确定模块,用于在预先为所述微服务调用应用设置的组件调用方式中,获取用户确定的目标组件调用方式,所述组件调用方式包括本地调用或者远程调用;部署模块,用于根据所述目标组件调用方式部署所述微服务提供应用和所述微服务调用应用。
可选地,所述微服务调用应用包括第一服务提供组件和第一服务调用组件,所述调用方式确定模块,用于获取所述用户为所述第一服务提供组件选择的部署模式,并根据所述部署模式确定所述第一服务调用组件的组件调用方式,得到所述目标组件调用方式。
可选地,所述微服务提供应用包括第二服务提供组件,所述调用方式确定模块,用于在所述部署模式为本地模式时,确定所述第一服务调用组件的组件调用方式为本地调用,所述本地调用表示所述第一服务调用组件调用所述第一服务提供组件;在所述部署模式为远程模式时,确定所述第一服务调用组件的调用方式为远程调用,所述远程调用表示所述第一服务调用组件调用所述第二服务提供组件。
可选地,所述部署模块,用于在所述目标组件调用方式为本地调用时,将所述微服务提供应用和微服务调用应用合并部署;在所述目标组件调用方式为远程调用时,将所述微服务提供应用和微服务调用应用拆分部署。
第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述部署微服务应用的方法。
第四方面,提供一种电子设备,包括:存储器,其上存储有计算机程序;以及一个或者多个处理器,用于执行所述存储器中的程序,实现权利要求1-4中任一项所述方法。
采用上述装置,确定待部署的微服务提供应用和微服务调用应用;在预先为所述微服务调用应用设置的组件调用方式中,获取用户确定的目标组件调用方式,所述组件调用方式包括本地调用或者远程调用;根据所述组件调用方式部署所述微服务提供应用和所述微服务调用应用。这样,通过获取用户在预设的组件调用方式中选择的目标组件调用方式,即可灵活的实现微服务应用的自动拆分或合并,无需通过人工修改配置文件来调整组件调用方式,从而节约了人力资源,提高了微服务应用部署的效率。
本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1是本公开实施例提供的一种部署微服务应用的方法的流程示意图;
图2是本公开实施例提供的一种微服务应用的拆分部署方法的流程示意图;
图3是本公开实施例提供的一种微服务应用的合并部署方法的流程示意图;
图4是本公开实施例提供的一种部署微服务应用的装置的结构示意图;
图5是本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
本公开可以应用于微服务架构的场景,其中,在微服务架构下,一个大型复杂应用由一个或多个微服务应用组成,架构中的各个微服务应用可以进行独立的开发、设计、运行和运维,在进行微服务应用开发时,可以将微服务应用的业务服务以组件的方式进行开发,每个组件是相互独立的,且组件之间可以设置依赖关系,以实现组件之间的调用,例如,微服务应用可以包括第一服务组件和第二服务组件,若设置的依赖关系是第一服务组件依赖第二服务组件,即第一服务组件调用第二服务组件,此时,该第一服务组件为服务调用组件,第二服务组件为服务提供组件;反之,若设置的依赖关系是第二服务组件依赖第一服务组件,即第二服务组件调用第一服务组件,此时,该第二服务组件为服务调用组件,第一服务组件为服务提供组件。
在进行微服务部署时,可以将一个应用拆分为多个微服务应用,以实现微服务应用的拆分部署,示例地,在需要将第一微服务应用的业务服务进行拆分时,可以创建第二微服务应用,并通过第二微服务应用运行需要从第一微服务应用中拆分出来的业务服务,此时,该第一微服务应用即为微服务提供应用,该第二微服务应用即为微服务调用应用,微服务调用应用引用微服务提供应用中需要拆分出来的业务服务,其中,微服务调用应用包括第一服务调用组件以及第一服务提供组件,第一服务调用组件调用第一服务提供组件,微服务提供应用包括第二服务调用组件以及第二服务提供组件,第二服务调用组件调用第二服务提供组件。
由于服务提供组件包括源码和配置文件,源码包括接口和实现类,因此,在确定微服务提供应用和微服务调用应用后,可以通过人工修改微服务调用应用中第一服务提供组件的源码和配置文件,从而对第一服务提供组件的组件调用方式进行设置,以实现微服务提供应用和微服务调用应用的部署。
以微服务提供应用和微服务调用应用的拆分部署为例,可以通过人工将第一服务提供组件的配置文件的调用方式修改为远程调用,并将第一服务提供组件的源码的发布方式设置为只发布调用接口,从而使得微服务调用应用中的第一服务调用组件通过远程调用的方式调用微服务提供应用中的第二服务提供组件,进而完成微服务提供应用和微服务调用应用的拆分部署,这样,在发布应用的时候,该微服务提供应用和微服务调用应用可以作为两个独立的微服务应用发布。
考虑到微服务的拆分可能出现不合理的情况,因此,在进行微服务部署时,还可以对拆分不合理的微服务应用进行合并,示例地,仍然以上述微服务提供应用和微服务调用应用进行说明,可以通过人工将微服务调用应用中的第一服务提供组件的组件调用方式修改为本地调用,以实现微服务提供应用和微服务调用应用的合并部署,具体地,可以通过人工将第一服务提供组件的配置文件的调用方式修改为本地调用,并将第一服务提供组件的源码的发布方式设置为原样发布(即接口和实现类均发布),从而使得微服务调用应用中的第一服务调用组件通过本地调用方式调用微服务提供应用中的第二服务提供组件,进而完成微服务提供应用和微服务调用应用的合并部署,这样,在发布应用的时候,该微服务提供应用和微服务调用应用可以合并为一个独立的应用发布。
但是,由于上述采用人工修改配置文件的方式进行微服务应用部署的工作量较大,不仅会浪费大量的人工资源,而且微服务应用部署的灵活度较低,导致微服务部署的效率较低。
为了解决上述问题,本公开提供一种部署微服务应用的方法、装置、存储介质以及电子设备,通过获取用户在预设的组件调用方式中选择的目标组件调用方式,即可灵活的实现微服务应用的自动拆分或合并,无需通过人工修改的方式来调整组件调用方式,从而节约了人力资源,提高了微服务应用部署的效率。
下面结合具体实施例对本公开进行详细说明。
图1是本公开提供的一种部署微服务应用的方法,如图1所示,该方法包括:
S101、确定待部署的微服务提供应用和微服务调用应用。
其中,微服务提供应用用于提供业务服务,微服务调用应用调用微服务提供应用提供的业务服务,该微服务调用应用包括第一服务提供组件和第一服务调用组件,第一服务调用组件调用该第一服务提供组件,该微服务调用应用包括第二服务提供组件和第二服务调用组件,第二服务调用组件调用该第二服务提供组件。
S102、在预先为该微服务调用应用设置的组件调用方式中,获取用户确定的目标组件调用方式。
其中,该组件调用方式包括本地调用或者远程调用,本地调用表示应用内组件之间在同一进程或者应用内进行调用,远程调用表示应用内组件之间跨进程调用、跨应用调用或者跨设备调用。例如,当微服务调用应用中的第一服务调用组件调用该应用中的第一服务提供组件时,由于组件间的调用是在同一个应用(即微服务调用应用)内的调用,则该微服务调用应用的组件调用方式为本地调用,当该微服务调用应用中的第一服务调用组件调用微服务提供应用中的第二服务提供组件时,由于组件间的调用是在两个不同的应用(即微服务调用应用中的组件调用微服务提供应用中的组件)之间的调用,则该微服务调用应用的组件调用方式为远程调用。
在一种可能的实现方式中,可以获取该用户为该第一服务提供组件选择的部署模式,并根据该部署模式确定该第一服务调用组件的组件调用方式,得到该目标组件调用方式。
其中,在该部署模式为本地模式时,确定该第一服务调用组件的调用方式为本地调用,该本地调用表示该第一服务调用组件调用该第一服务提供组件;在该部署模式为远程模式时,确定该第一服务调用组件的调用方式为远程调用,该远程调用表示该第一服务调用组件调用该第二服务提供组件。
示例地,可以通过可视化配置工具向用户展示可视化的配置界面,该配置界面包括待配置的微服务应用的服务提供组件的组件标识(如组件名称),以及各个服务提供组件对应的模式选项,用户通过该模式选项即可设置各个服务提供组件的部署模式,在用户通过该配置界面选定相应的部署模式时,可视化配置工具可以获取到该部署配置指令,并根据该部署配置指令对微服务应用的部署模式进行配置,该部署模式可以包括普通模式、本地模式以及远程模式,其中,普通模式可以为默认模式,表示该组件的源码和配置文件都原样发布,当某个组件设置为普通模式时,即表示该组件所在的应用为微服务提供应用,本地模式表示该组件的源码原样发布,配置文件采用本地调用的方式,远程模式则表示该组件的源码只发布调用接口,配置文件采用远程调用的方式。
这样,微服务提供应用的部署模式可以采用默认的普通模式,而当微服务调用应用的部署模式被设置为本地模式时,则确定该微服务调用应用中第一服务调用组件的调用方式为本地调用,当微服务调用应用的部署模式被设置为远程模式时,则确定该微服务调用应用中第一服务调用组件的调用方式为远程调用,从而根据第一服务调用组件的调用方式确定该微服务调用应用的目标组件调用方式。综上所述,本公开通过可视化配置工具即可实现微服务调用应用的组件调用方式的配置,避免了通过人工修改配置文件,从而节约了人力资源,提高了微服务应用部署的效率。
需要说明的是,上述本地调用和远程调用的具体调用方式可以参考现有技术中本地调用和远程调用的过程,此处不再赘述。
S103、根据该目标组件调用方式部署该微服务提供应用和该微服务调用应用。
在本步骤中,在确定目标组件调用方式后,可以根据目标组件调用方式确定该微服务提供应用和该微服务调用应用是进行拆分部署还是进行合并部署。
其中,在该目标组件调用方式为本地调用时,将该微服务提供应用和微服务调用应用合并部署,在该目标组件调用方式为远程调用时,将该微服务提供应用和微服务调用应用拆分部署。
需要说明的是,在完成微服务应用的部署并发布应用时,对于拆分部署的情况,该微服务提供应用和微服务调用应用可以作为两个独立的微服务应用发布,对于合并部署的情况,该微服务提供应用和微服务调用应用可以合并为一个独立的应用发布。
采用上述方法,通过用户配置微服务调用应用的组件调用方式,从而通过该组件调用方式灵活的对微服务调用应用和微服务提供应用进行拆分或者合并,避免了通过人工修改配置文件,从而节约了人力资源,提高了微服务应用部署的效率。
下面结合图2和图3,以微服务应用的部署包括微服务应用的拆分或者微服务应用的合并为例,对本公开另一实施例提供的一种部署微服务应用的方法进行说明,本实施例可以应用于一种可视化的配置工具中。
如图2所示,图2为本实施例中一种微服务应用的拆分方法,该方法包括:
S201、创建待部署的第一微服务应用和第二微服务应用。
其中,第一微服务应用包括第一服务提供组件和第一服务调用组件,第二微服务应用包括第二服务提供组件和第二服务调用组件。
S202、获取用户在选定部署模式时触发的第一部署配置指令,并根据该第一部署配置指令将该第一微服务应用中的第一服务提供组件的部署模式设置为远程模式,并根据该第一部署配置指令将该第二微服务应用中的第二服务提供组件的部署模式设置为普通模式。
在本步骤中,可以通过可视化配置工具向用户展示可视化的配置界面,该配置界面包括待配置的微服务应用的服务提供组件的组件标识(如组件名称),以及各个服务提供组件对应的模式选项,用户通过该模式选项即可设置各个服务提供组件的部署模式,在用户通过该配置界面选定相应的部署模式时,可视化配置工具可以获取到该第一部署配置指令,并根据该第一部署配置指令对微服务应用的部署模式进行配置,该部署模式可以包括普通模式、本地模式以及远程模式,其中,普通模式可以为默认模式,表示该组件的源码和配置文件都原样发布,当某个组件设置为普通模式时,即表示该组件所在的应用为微服务提供应用,本地模式表示该组件的源码原样发布,配置文件采用本地调用的方式,远程模式则表示该组件的源码只发布调用接口,配置文件采用远程调用的方式。这样,用户即可从这三个部署模式中选择相应的模式,在选定部署模式后,用户可以通过触发配置界面的确定按钮发出该第一部署配置指令,在本实施例中,根据该第一部署配置指令可以将第一微服务应用的部署模式设置为远程模式,将该第二微服务应用的部署模式设置为普通模式。
S203、在将该第一微服务应用中的第一服务提供组件的部署模式设置为远程模式,且将该第二微服务应用中的第二服务提供组件的部署模式设置为普通模式后,确定第一微服务应用为微服务调用应用,第二微服务应用为微服务提供应用。
其中,微服务提供应用用于提供业务服务,微服务调用应用引用微服务提供应用提供的业务服务。
S204、在确定该微服务调用应用中的第一服务提供组件的部署模式为远程模式时,确定该微服务调用应用的目标组件调用方式为远程调用。
S205、在确定该微服务调用应用的目标组件调用方式为远程调用时,确定该微服务调用应用与微服务提供应用拆分部署。
在本步骤中,在确定该微服务调用应用的组件调用方式为远程调用时,则可以自动配置微服务调用应用中的第一服务提供组件的源码和配置文件,使得微服务调用应用中的第一服务调用组件远程调用微服务提供应用中的第二服务提供组件。
在该微服务提供应用和微服务调用应用采用拆分部署时,该微服务提供应用和微服务调用应用可以作为两个独立的微服务应用发布。
在上述微服务调用应用与微服务提供应用拆分不合理的情况下,需要对上述拆分部署的微服务调用应用和微服务提供应用进行合并,示例地,可以通过图3所示步骤进行合并,如图3所示,图3为本实施例中一种微服务应用的合并方法,该方法包括:
S206、确定待合并的微服务调用应用与微服务提供应用。
S207、获取用户在选定部署模式时触发的第二部署配置指令,并根据该第二部署配置指令将该待服务调用应用的部署模式设置为本地模式。
这里,部署模式的设置过程可以参考上述步骤S202中的描述,此处不再赘述。
S208、在根据该第二微服务应用的部署模式确定该微服务调用应用的目标组件调用方式为本地调用时,确定该微服务调用应用与微服务提供应用为合并部署。
在本步骤中,在确定该微服务调用应用的组件调用方式为本地调用时,则可以自动配置微服务调用应用中的第一服务提供组件的源码和配置文件,使得微服务调用应用中的第一服务调用组件远程调用该微服务调用应用中的第一服务提供组件。
在该微服务提供应用和微服务调用应用采用合并部署时,该微服务提供应用和微服务调用应用可以作为合并为一个独立的应用发布。
这样,本公开通过用户选定的组件部署模式,即可实现微服务应用的拆分和合并,无需通过人工修改配置文件来调整组件调用方式,从而节约了人力资源,提高了微服务应用部署的效率。
需要说明的是,对于上述方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
图4为本公开实施例提供的一种部署微服务应用的装置,如图4所示,该装置包括:
应用确定模块401,用于确定待部署的微服务提供应用和微服务调用应用;
调用方式确定模块402,用于在预先为该微服务调用应用设置的组件调用方式中,获取用户确定的目标组件调用方式,该组件调用方式包括本地调用或者远程调用;
部署模块403,用于根据该目标组件调用方式部署该微服务提供应用和该微服务调用应用。
可选地,该微服务调用应用包括第一服务提供组件和第一服务调用组件,该调用方式确定模块402,用于获取该用户为该第一服务提供组件选择的部署模式,并根据该部署模式确定该第一服务调用组件的组件调用方式,得到该目标组件调用方式。
可选地,该微服务提供应用包括第二服务提供组件,该调用方式确定模块402,用于在该部署模式为本地模式时,确定该第一服务调用组件的组件调用方式为本地调用,该本地调用表示该第一服务调用组件调用该第一服务提供组件;在该部署模式为远程模式时,确定该第一服务调用组件的调用方式为远程调用,该远程调用表示该第一服务调用组件调用该第二服务提供组件。
可选地,该部署模块403,用于在该目标组件调用方式为本地调用时,将该微服务提供应用和微服务调用应用合并部署;在该目标组件调用方式为远程调用时,将该微服务提供应用和微服务调用应用拆分部署。
采用上述装置,本公开通过用户选定的组件部署模式,即可实现微服务应用的拆分和合并,无需通过人工修改配置文件来调整组件调用方式,从而节约了人力资源,提高了微服务应用部署的效率。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图5是根据一示例性实施例示出的一种电子设备500的框图。如图5所示,该电子设备500可以包括:处理器501,存储器502。该电子设备500还可以包括多媒体组件503,输入/输出(I/O)接口504,以及通信组件505中的一者或多者。
其中,处理器501用于控制该电子设备500的整体操作,以完成上述的部署微服务应用的方法中的全部或部分步骤。存储器502用于存储各种类型的数据以支持在该电子设备500的操作,这些数据例如可以包括用于在该电子设备500上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器502可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件503可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器502或通过通信组件505发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口504为处理器501和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件505用于该电子设备500与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件505可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
在一示例性实施例中,电子设备500可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的部署微服务应用的方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的部署微服务应用的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器502,上述程序指令可由电子设备500的处理器501执行以完成上述的部署微服务应用的方法。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
Claims (8)
1.一种部署微服务应用的方法,其特征在于,包括:
确定待部署的微服务提供应用和微服务调用应用;
在预先为所述微服务调用应用设置的组件调用方式中,获取用户确定的目标组件调用方式,所述组件调用方式包括本地调用或者远程调用;
根据所述目标组件调用方式部署所述微服务提供应用和所述微服务调用应用
其中,所述微服务调用应用包括第一服务提供组件和第一服务调用组件,所述获取用户确定的目标组件调用方式包括:
获取所述用户为所述第一服务提供组件选择的部署模式;
根据所述部署模式确定所述第一服务调用组件的组件调用方式,得到所述目标组件调用方式;
所述获取所述用户为所述第一服务提供组件选择的部署模式包括:
通过可视化配置工具向用户展示可视化的配置界面;该配置界面包括待配置的微服务应用的服务提供组件的组件标识,以及各个服务提供组件对应的模式选项,以便用户通过该模式选项设置各个服务提供组件的部署模式;
在用户通过该配置界面选定相应的部署模式时,获取部署配置指令,并根据该部署配置指令对微服务应用的部署模式进行配置;
所述根据所述目标组件调用方式部署所述微服务提供应用和所述微服务调用应用包括:
在所述目标组件调用方式为远程调用时,将所述微服务提供应用和微服务调用应用拆分部署;
所述拆分部署包括:
创建待部署的第一微服务应用和第二微服务应用;
获取用户在选定部署模式时触发的第一部署配置指令,并根据该第一部署配置指令将该第一微服务应用中的第一服务提供组件的部署模式设置为远程模式,并根据该第一部署配置指令将该第二微服务应用中的第二服务提供组件的部署模式设置为普通模式;
在将该第一微服务应用中的第一服务提供组件的部署模式设置为远程模式,且将该第二微服务应用中的第二服务提供组件的部署模式设置为普通模式后,确定第一微服务应用为微服务调用应用,第二微服务应用为微服务提供应用;
在确定该微服务调用应用中的第一服务提供组件的部署模式为远程模式时,确定该微服务调用应用的目标组件调用方式为远程调用;
在确定该微服务调用应用的目标组件调用方式为远程调用时,确定该微服务调用应用与微服务提供应用拆分部署。
2.根据权利要求1所述的方法,其特征在于,所述微服务提供应用包括第二服务提供组件,所述根据所述部署模式确定所述第一服务调用组件的组件调用方式包括:
在所述部署模式为本地模式时,确定所述第一服务调用组件的组件调用方式为本地调用,所述本地调用表示所述第一服务调用组件调用所述第一服务提供组件;
在所述部署模式为远程模式时,确定所述第一服务调用组件的调用方式为远程调用,所述远程调用表示所述第一服务调用组件调用所述第二服务提供组件。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述目标组件调用方式部署所述微服务提供应用和所述微服务调用应用包括:
在所述目标组件调用方式为本地调用时,将所述微服务提供应用和微服务调用应用合并部署。
4.一种部署微服务应用的装置,其特征在于,包括:
应用确定模块,用于确定待部署的微服务提供应用和微服务调用应用;
调用方式确定模块,用于在预先为所述微服务调用应用设置的组件调用方式中,获取用户确定的目标组件调用方式,所述组件调用方式包括本地调用或者远程调用;
部署模块,用于在所述目标组件调用方式为远程调用时,将所述微服务提供应用和微服务调用应用拆分部署;所述拆分部署包括:创建待部署的第一微服务应用和第二微服务应用;获取用户在选定部署模式时触发的第一部署配置指令,并根据该第一部署配置指令将该第一微服务应用中的第一服务提供组件的部署模式设置为远程模式,并根据该第一部署配置指令将该第二微服务应用中的第二服务提供组件的部署模式设置为普通模式;在将该第一微服务应用中的第一服务提供组件的部署模式设置为远程模式,且将该第二微服务应用中的第二服务提供组件的部署模式设置为普通模式后,确定第一微服务应用为微服务调用应用,第二微服务应用为微服务提供应用;在确定该微服务调用应用中的第一服务提供组件的部署模式为远程模式时,确定该微服务调用应用的目标组件调用方式为远程调用;在确定该微服务调用应用的目标组件调用方式为远程调用时,确定该微服务调用应用与微服务提供应用拆分部署;
其中,所述微服务调用应用包括第一服务提供组件和第一服务调用组件;
所述调用方式确定模块,用于获取所述用户为所述第一服务提供组件选择的部署模式,并根据所述部署模式确定所述第一服务调用组件的组件调用方式,得到所述目标组件调用方式;
所述调用方式确定模块,用于通过可视化配置工具向用户展示可视化的配置界面;该配置界面包括待配置的微服务应用的服务提供组件的组件标识,以及各个服务提供组件对应的模式选项,以便用户通过该模式选项设置各个服务提供组件的部署模式;在用户通过该配置界面选定相应的部署模式时,获取该部署配置指令,并根据该部署配置指令对微服务应用的部署模式进行配置。
5.根据权利要求4所述的装置,其特征在于,所述微服务提供应用包括第二服务提供组件,所述调用方式确定模块,用于在所述部署模式为本地模式时,确定所述第一服务调用组件的组件调用方式为本地调用,所述本地调用表示所述第一服务调用组件调用所述第一服务提供组件;在所述部署模式为远程模式时,确定所述第一服务调用组件的调用方式为远程调用,所述远程调用表示所述第一服务调用组件调用所述第二服务提供组件。
6.根据权利要求4或5所述的装置,其特征在于,所述部署模块,用于在所述目标组件调用方式为本地调用时,将所述微服务提供应用和微服务调用应用合并部署。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-3中任一项所述方法的步骤。
8.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;以及
一个或者多个处理器,用于执行所述存储器中的程序,实现权利要求1-3中任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810582843.5A CN108804113B (zh) | 2018-06-07 | 2018-06-07 | 部署微服务应用的方法、装置和存储介质以及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810582843.5A CN108804113B (zh) | 2018-06-07 | 2018-06-07 | 部署微服务应用的方法、装置和存储介质以及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108804113A CN108804113A (zh) | 2018-11-13 |
CN108804113B true CN108804113B (zh) | 2022-03-22 |
Family
ID=64088929
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810582843.5A Active CN108804113B (zh) | 2018-06-07 | 2018-06-07 | 部署微服务应用的方法、装置和存储介质以及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108804113B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109639723A (zh) * | 2019-01-10 | 2019-04-16 | 深圳市买买提信息科技有限公司 | 一种基于erp***的微服务访问方法及服务器 |
CN110427237B (zh) * | 2019-07-29 | 2023-10-20 | 创新先进技术有限公司 | 一种跨应用访问目标页面的方法、装置及电子设备 |
CN111193803A (zh) * | 2019-12-31 | 2020-05-22 | 四川省公安科研中心 | 基于spring cloud的微服务构建方法及spring cloud微服务架构 |
CN113535254A (zh) * | 2020-04-20 | 2021-10-22 | 华为技术有限公司 | 一种微服务的处理方法、部署方法和相关装置 |
CN112416318B (zh) * | 2020-11-03 | 2021-10-08 | 前海飞算云智软件科技(深圳)有限公司 | 微服务开发方法、装置、存储介质及电子设备 |
CN112506709B (zh) * | 2020-12-16 | 2021-11-23 | 北京航天智造科技发展有限公司 | 微服务治理方法及装置 |
CN113176954B (zh) * | 2021-04-22 | 2023-03-21 | Oppo广东移动通信有限公司 | 应用程序的调用方法、装置、存储介质及电子设备 |
CN113656096A (zh) * | 2021-08-10 | 2021-11-16 | 成都长城开发科技有限公司 | 微服务快速集成***、方法、设备及存储介质 |
CN116860260A (zh) * | 2023-04-26 | 2023-10-10 | 安元科技股份有限公司 | 一种微前端架构下的可裁剪运维部署方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104142856A (zh) * | 2013-05-07 | 2014-11-12 | 华为技术有限公司 | 服务程序调用方法、***及其智能设备 |
CN106250179A (zh) * | 2016-07-26 | 2016-12-21 | 北京北森云计算股份有限公司 | 通过多语言云编译实现***动态功能拦截扩展的方法 |
EP3155524A1 (en) * | 2014-10-30 | 2017-04-19 | Equinix, Inc. | Interconnection platform for real-time configuration and management of a cloud-based services exchange |
CN106888129A (zh) * | 2017-04-20 | 2017-06-23 | 国家电网公司 | 一种可弹性伸缩的分布式服务管理***及其方法 |
CN107105004A (zh) * | 2017-03-02 | 2017-08-29 | 人谷科技(北京)有限责任公司 | 跨平台的服务调用方法及装置 |
CN107251086A (zh) * | 2014-12-29 | 2017-10-13 | 脸谱公司 | 通过应用服务替身的应用服务递送 |
CN107682206A (zh) * | 2017-11-02 | 2018-02-09 | 北京中电普华信息技术有限公司 | 基于微服务的业务流程管理***的部署方法及*** |
CN108052374A (zh) * | 2017-12-29 | 2018-05-18 | 郑州云海信息技术有限公司 | 一种部署容器微服务的方法及装置 |
-
2018
- 2018-06-07 CN CN201810582843.5A patent/CN108804113B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104142856A (zh) * | 2013-05-07 | 2014-11-12 | 华为技术有限公司 | 服务程序调用方法、***及其智能设备 |
EP3155524A1 (en) * | 2014-10-30 | 2017-04-19 | Equinix, Inc. | Interconnection platform for real-time configuration and management of a cloud-based services exchange |
CN107251086A (zh) * | 2014-12-29 | 2017-10-13 | 脸谱公司 | 通过应用服务替身的应用服务递送 |
CN106250179A (zh) * | 2016-07-26 | 2016-12-21 | 北京北森云计算股份有限公司 | 通过多语言云编译实现***动态功能拦截扩展的方法 |
CN107105004A (zh) * | 2017-03-02 | 2017-08-29 | 人谷科技(北京)有限责任公司 | 跨平台的服务调用方法及装置 |
CN106888129A (zh) * | 2017-04-20 | 2017-06-23 | 国家电网公司 | 一种可弹性伸缩的分布式服务管理***及其方法 |
CN107682206A (zh) * | 2017-11-02 | 2018-02-09 | 北京中电普华信息技术有限公司 | 基于微服务的业务流程管理***的部署方法及*** |
CN108052374A (zh) * | 2017-12-29 | 2018-05-18 | 郑州云海信息技术有限公司 | 一种部署容器微服务的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108804113A (zh) | 2018-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108804113B (zh) | 部署微服务应用的方法、装置和存储介质以及电子设备 | |
CN109445869B (zh) | 一种跨云适配的微服务管理方法、装置和存储介质 | |
CN111736956B (zh) | 一种容器服务部署方法、装置、设备及可读存储介质 | |
EP3552419B1 (en) | System and method for programming and/or management of core network slices | |
CN111614490B (zh) | 基于顶级容器集群对托管容器集群的管理***及方法 | |
CN108182131B (zh) | 监控应用运行状态的方法、装置、存储介质及电子设备 | |
US20210224099A1 (en) | Virtual Machine Management Method and Apparatus for Cloud Platform | |
CN107959582B (zh) | 一种切片实例的管理方法及装置 | |
CN112015521B (zh) | 推理服务的配置方法、装置、电子设备及存储介质 | |
CN103595766B (zh) | 实现扩展应用程序的推送通知的方法及装置 | |
WO2024077885A1 (zh) | 容器集群的管理方法、装置、设备及非易失性可读存储介质 | |
EP3839726A1 (en) | Software modification initiation method and apparatus | |
US20200065130A1 (en) | Method and device for managing virtualized software functions in a network | |
CN102789357A (zh) | 基于安卓应用技术的设置主题资源的方法及装置 | |
CN108809683B (zh) | 部署云应用***的方法及装置 | |
CN112118459A (zh) | 共享摄像头数据实现多个app共同直播的方法及可读介质 | |
KR101366747B1 (ko) | Sdr 단말 장치, 및 sdr 단말 장치의 재 구성 방법 | |
CN111797173B (zh) | 联盟链共享***、方法、装置、电子设备及存储介质 | |
CN111274000A (zh) | 一种服务编排方法、装置及电子设备和存储介质 | |
CN114003334A (zh) | 虚拟机热迁移网络中断的优化方法、装置、设备、存储介质和*** | |
US10346192B2 (en) | Method, apparatus, and system for displaying virtual machine name | |
CN105577503A (zh) | 一种基于Docker的云交换机***及其实现方法 | |
CN108121578B (zh) | 生成应用程序的方法、装置和存储介质以及电子设备 | |
CN109471714B (zh) | 平台部署方法、装置、设备及储存介质 | |
KR20100032740A (ko) | 이동통신단말기에서 언어 변경 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |