System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于API网关实现关联查询的方法技术_技高网

一种基于API网关实现关联查询的方法技术

技术编号:41075339 阅读:3 留言:0更新日期:2024-04-24 11:33
本发明专利技术公开了一种基于API网关实现关联查询的方法,其包括:每个微服务在注册API路由数据时,同时声明该微服务所对应的查询请求所支持的关联查询定义和关联查询名称;在API网关接收到查询请求时,根据API路由表将该查询请求发送至对应的微服务;并获取微服务的响应结果;查询API路由表,获得该查询请求所支持的所有的关联查询名称及关联查询定义;由API网关依次或并发执行全部关联查询,并解析关联查询响应结果,再根据关联查询定义生成关联API请求;API网关将关联API请求发送至对应的微服务,并获取响应结果;根据关联查询定义将关联API请求的响应结果拼接至API客户端发出的查询请求的响应结果中,生成最终响应结果,并将最终响应结果返回至API客户端。

【技术实现步骤摘要】

本专利技术涉及计算机网络,尤其涉及一种基于api网关实现关联查询的方法。


技术介绍

1、微服务是一种开发软件的架构和组织方法,其中软件由通过明确定义的api进行通信的小型独立服务组成。这些服务由各个小型独立团队负责。微服务架构使应用程序更易于扩展和更快地开发,从而加速创新并缩短新功能的上市时间。

2、当api客户端在调用某个api请求查询某个资源的数据时,往往也需要查询与这个资源相关联的其它资源的数据,如:查询设备时,期望同时获取到创建设备的用户的信息。在微服务架构下,为不同资源提供查询服务的一般会分布在不同的微服务上,因此提供一个api接口往往无法直接满足客户端的查询需求,需要api客户端先调用一个服务的api查询到数据,再发起api请求到其它微服务上获取与之相关联的其它数据。

3、如现有技术中的api查询过程包括:api客户端发起请求1,api网关转发请求2到微服务1并返回结果;api客户端收到请求1的回应后,再根据1回应的数据,发起请求3,等到api网关发起请求4转发到微服务2并回应后,再请求请求5,api网关再转发请求6到微服务3,最终api客户端获取到了自己想要的所有数据。

4、通常api客户端与api服务器之间往往是通过互联网来访问的,所以由客户端依次向不同的微服务发起api请求的方式并不高效,且因为互联网的原因,请求的连接还有可能不稳定,这会导致请求还可能被中断或者请求的数据不完整。且要完成这些api的调用,需要在api客户端这边封装后续每个api的请求,可能还需要并行的发起请求并等待所有请求的响应来提高请求效率,这些所有的操作都需要单独的硬编码来完成。

5、由此可见,现有技术中需要一种新的api查询处理方法,以实现关联查询的高效处理。


技术实现思路

1、本专利技术所要实现的技术目的在于提供一种基于api网关实现关联查询的方法,该方法使用api网关来完成需要的关联查询功能,旨在解决api客户端的调用复杂,对不同api请求需要重复编码工作的问题。

2、基于上述技术目的,本专利技术提供一种基于api网关实现关联查询的方法,所述方法包括:

3、每个微服务在注册api路由数据时,同时声明该微服务所对应的查询请求所支持的关联查询定义和关联查询名称;

4、在api网关接收到api客户端发送的查询请求时,根据api路由表将该查询请求发送至对应的微服务;并获取微服务的响应结果;

5、由api网关查询api路由表,获得该查询请求所支持的所有的关联查询名称,并获取所有的关联查询明所对应的关联查询定义;

6、由api网关依次或并发执行全部关联查询,并解析关联查询响应结果,再根据关联查询定义生成关联api请求;

7、api网关将关联api请求发送至对应的微服务,并获取响应结果;

8、根据关联查询定义将关联api请求的响应结果拼接至api客户端发出的查询请求的响应结果中,生成最终响应结果,并将最终响应结果返回至api客户端。

9、在一个实施例中,所述关联查询定义中包含这个关联查询所对应的名称、api信息、关联字段、api请求字段。

10、在一个实施例中,后端微服务将自己所能够提供的api请求和服务相关的信息注册到注册中心,api网关通过注册中心,获取后端微服务所能够提供的api请求。

11、与现有技术相比,本专利技术的一个或多个实施例可以具有如下专利技术点及优势:

12、1.由api网关来完成关联查询请求,可以减少后端微服务手动做关联查询的工作。

13、2.统一经api网关转发请求,无需api客户端手动做相关操作,让api客户端发送api请求变得更简单。

14、3.由于api网关与后端微服务是在同一局域网内的,所以提高了关联查询的效率和可靠性。

15、本专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

本文档来自技高网...

【技术保护点】

1.一种基于API网关实现关联查询的方法,其特征在于,所述方法包括:

2.根据权利要求1所述的基于API网关实现关联查询的方法,其特征在于,所述关联查询定义中包含这个关联查询所对应的名称、API信息、关联字段、API请求字段。

3.根据权利要求1所述的基于API网关实现关联查询的方法,其特征在于,后端微服务将自己所能够提供的API请求和服务相关的信息注册到注册中心,API网关通过注册中心,获取后端微服务所能够提供的API请求。

4.一种网络配置终端,其特征在于,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行权利要求1-3中任一所述的基于API网关实现关联查询的方法。

5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行1-3中任一所述的基于API网关实现关联查询的方法。

【技术特征摘要】

1.一种基于api网关实现关联查询的方法,其特征在于,所述方法包括:

2.根据权利要求1所述的基于api网关实现关联查询的方法,其特征在于,所述关联查询定义中包含这个关联查询所对应的名称、api信息、关联字段、api请求字段。

3.根据权利要求1所述的基于api网关实现关联查询的方法,其特征在于,后端微服务将自己所能够提供的api请求和服务相关的信息注册到注册中心,api网关通过注册中心,获取后端微服务所能够提供的api请求。

...

【专利技术属性】
技术研发人员:陈健
申请(专利权)人:北京映翰通网络技术股份有限公司
类型:发明
国别省市:

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

1