基于spring cloud的微服务构建方法及spring cloud微服务架构技术

技术编号:24254351 阅读:24 留言:0更新日期:2020-05-23 01:07
本申请提供一种基于spring cloud的微服务构建方法及spring cloud微服务架构。该方法包括:获取多个微服务的合并信息;将入参转换成http请求信息;其中,所述入参表示合并的所述微服务之间调用的参数;将feign组件的路由配置和所调用的controller层的路由配置关联;基于所述http请求信息,构造springmvc参数,路由到所调用的controller层方法,进而完成调用。通过上述步骤实现了在spring cloud微服务架构下对已经划分好的微服务进行合并。进而解决了现有技术中的服务划分问题,可以根据实际业务发展,计算量的变化合理的规划微服务,改变微服务的组成。

Microservice construction method and microservice architecture based on spring cloud

【技术实现步骤摘要】
基于springcloud的微服务构建方法及springcloud微服务架构
本申请涉及微服务架构
,具体而言,涉及一种基于springcloud的微服务构建方法,springcloud微服务架构,服务器及存储介质。
技术介绍
随着信息时代的蓬勃发展,系统复杂度越来越高,处理的数据量也越来越大。单体架构在规模比较小的情况下工作情况良好,但是随着系统规模的扩大,它暴露出来的问题也越来越多。规模扩大对系统的水平扩展能力提出了极高的要求,微服务应用应运而生。而所谓微服务,就是以较小的功能集作为独立的服务进行部署,模块间调用通过服务调用完成。当前比较流行的微服务架构就有springcloud,其中关键的服务间调用方法是通过feign组件完成。从单体应用到微服务应用,最核心的一个问题是服务划分的粒度需要到什么程度,多小算是微服务。而对于中小型公司,既想利用微服务的优势,又担心服务划分带来的运维维护成本。服务划分粒度不够,没有达到微服务带来的水平扩展能力;服务划分太细,有些多余的划分,又会增加维护和运营成本。
技术实现思路
本申请实施例的目的在于提供一种基于springcloud的微服务构建方法,springcloud微服务架构,服务器及存储介质,以改善目前微服务无法合理划分问题。第一方面,本申请实施例提供一种基于springcloud的微服务构建方法,应用于服务器;所述方法包括:接收多个微服务的合并信息;将入参转换成http请求信息;所述入参表示合并的所述微服务之间调用的参数;将feign组件的路由配置和所调用的controller的层路由配置关联;基于所述http请求信息,构造springmvc参数,路由到所调用的controller层方法,进而完成调用。在本申请中,将微服务进行合并,通过将入参转换成http请求信息,再将feign组件的路由配置和所调用的controller层路由配置关联,最后基于http请求信息,构造springmvc参数,路由到所调用的controller层方法,进而完成了合并后的微服务之间的调用。实现了在springcloud微服务架构下对已经划分好的微服务进行合并。进而解决了现有技术中的服务划分问题,可以根据实际业务发展,计算量的变化合理的规划微服务,改变微服务的组成。结合上述第一方面提供的技术方案,在一些可能的实现方式中,通过以下步骤对多个所述微服务进行合并:确定一个所述微服务作为主服务,将需要合并的其他所述微服务的依赖关系添加到所述主服务,并声明多个所述微服务的合并信息。在本申请中,通过确定一个微服务作为主服务,将需要合并的其他微服务的依赖关系添加到主服务,并声明多个微服务的合并信息,进而实现了微服务之间的合并。结合上述第一方面提供的技术方案,在一些可能的实现方式中,通过以下步骤对合并的多个所述微服务进行拆分:将与所述主服务存在依赖关系的所述微服务删除,并声明所述微服务的拆分信息。在本申请中,通过将与主服务存在依赖关系的微服务删除,并声明微服务的拆分信息。进而实现了合并后的微服务的拆分。解决了现有技术中,微服务架构中的微服务划分问题。结合上述第一方面提供的技术方案,在一些可能的实现方式中,未合并的微服务调用合并的多个所述微服务中的一个所述微服务通过所述主服务进行调用,调用过程包括:通过所述feign组件动态代理构造http请求;通过springmvc处理所述http请求,对所述http请求进行解析;路由到controller层方法,进而完成调用。结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述http请求包括URL、Requestpayload;所述通过springmvc处理所述http请求,包括:将所述Requestpayload构造成方法参数;相应的,路由到controller层方法,包括:通过URL路由到controller层方法。结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述方法还包括:将合并后的多个所述微服务进行注册。在本申请中,通过对合并后多个的微服务进行注册,进而使得其他未合并的微服务能够对合并的多个微服务进行调用。第二方面,本申请实施例提供一种springcloud微服务架构,包括配置中心,以及部署装置;所述配置中心用于接收多个微服务的合并信息;所述部署装置用于将入参转换成http请求信息;所述入参表示合并的所述微服务之间调用的参数;以及将feign组件的路由配置和所调用的controller层的路由配置关联;以及基于所述http请求信息,构造springmvc参数,路由到所调用的controller层方法,进而完成调用。结合上述第二方面提供的技术方案,在一些可能的实现方式中,所述部署装置还用于确定一个所述微服务作为主服务,将需要合并的其他所述微服务的依赖关系添加到所述主服务,并声明多个所述微服务的合并信息。第三方面,本申请实施例提供一种服务器,包括:处理器和存储器,所述处理器和所述存储器连接;所述存储器用于存储程序;所述处理器用于调用存储在所述存储器中的程序,执行如上述第一方面实施例和/或结合上述第一方面实施例的一些可能的实现方式提供的方法。第四方面,本申请实施例提供一种存储介质,其上存储有计算机程序,所述计算机程序在被处理器运行时执行如上述第一方面实施例和/或结合上述第一方面实施例的一些可能的实现方式提供的方法。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1为本申请实施例提供的一种服务器的结构示意图。图2为本申请实施例提供的一种基于springcloud的微服务构建方法的步骤流程图。图3为本申请实施例提供的一种微服务之间的调用方式的示意图。图4为本申请实施例提供的另一种微服务之间的调用方式的示意图。图5为本申请实施例提供的另一种基于springcloud的微服务构建方法的步骤流程图。图6为本申请实施例提供的springcloud微服务架构的结构示意图。图标:100-服务器;110-处理器;120-存储器;200-springcloud微服务架构;210-配置中心;220-部署装置;230-注册中心。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。目前,从单体应用到微服务应用,最核心的一个问题是服务划分的粒度需要到什么程度,多小算是微服务。而对于中小型公司,既想利用微服务的优势,又担心服务划分带来的运维维护成本。服务划分粒度不够,没有达到微服务带来的水平扩展能力;服务划分太细,有些多余的划分,又会增加维护和运营成本。鉴于上述问题,本申请专利技术人经过研究探索,提出本文档来自技高网...

【技术保护点】
1.一种基于spring cloud的微服务构建方法,其特征在于,应用于服务器;所述方法包括:/n接收多个微服务的合并信息;/n将入参转换成http请求信息;其中,所述入参表示合并的所述微服务之间调用的参数;/n将feign组件的路由配置和所调用的controller层的路由配置关联;/n基于所述http请求信息,构造springmvc参数,路由到所调用的controller层方法,进而完成调用。/n

【技术特征摘要】
1.一种基于springcloud的微服务构建方法,其特征在于,应用于服务器;所述方法包括:
接收多个微服务的合并信息;
将入参转换成http请求信息;其中,所述入参表示合并的所述微服务之间调用的参数;
将feign组件的路由配置和所调用的controller层的路由配置关联;
基于所述http请求信息,构造springmvc参数,路由到所调用的controller层方法,进而完成调用。


2.根据权利要求1所述的方法,其特征在于,通过以下步骤对多个所述微服务进行合并:
确定一个所述微服务作为主服务,将需要合并的其他所述微服务的依赖关系添加到所述主服务,并声明多个所述微服务的合并信息。


3.根据权利要求2所述的方法,其特征在于,通过以下步骤对合并的多个所述微服务进行拆分:
将与所述主服务存在依赖关系的所述微服务删除,并声明所述微服务的拆分信息。


4.根据权利要求2所述的方法,其特征在于,未合并的微服务调用合并的多个所述微服务中的一个所述微服务通过所述主服务进行调用,调用过程包括:
通过所述feign组件动态代理构造http请求;
通过springmvc处理所述http请求,对所述http请求进行解析;路由到controller层方法,进而完成调用。


5.根据权利要求4所述的方法,其特征在于,所述http请求包括URL、Requestpayload;
所述通过springmvc处理所述ht...

【专利技术属性】
技术研发人员:汪茹洋林皓李继鸿吴迪戴相龙
申请(专利权)人:四川省公安科研中心北京北信源软件股份有限公司
类型:发明
国别省市:四川;51

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

1