【技术实现步骤摘要】
基于API网关的远程过程调用处理方法和装置
[0001]本申请涉及计算机
,具体而言,涉及一种基于API网关的远程过程调用处理方法和装置。
技术介绍
[0002]随着分布式和微服务技术的发展,基于微服务架构的API网关(API Gateway)得到了广泛的应用。API网关是实现对后端的微服务接口调用的统一入口,对来自应用客户端的访问请求进行路由、负载均衡、协议转换、访问控制和流量限制等处理,从而向各应用客户端隐藏后端微服务的接口服务,使得隐藏在 API 网关后面的各微服务可以专注于业务服务,而不用去处理如负载均衡、协议转换、访问控制和流量限制等基础功能,也提高了系统的可维护性和扩展性。由于基于远程过程调用(RPC)的微服务接口调用协议,如gRPC、Protobuf、Dubbo等在性能上的优点,实际应用中可以在API网关中使用这些RPC协议实现对后端微服务的接口调用,从而通过将应用客户端的HTTP协议的接口请求转换为对后端微服务的RPC接口调用,实现对微服务的服务调用。
[0003]上述RPC接口调用是采用客户端/服务端(C/S)模式,通过网络协议在作为客户端的API网关上实现对远程计算机的微服务中的方法的远程调用,这种远程调用主要是通过传递参数值(输入参数值和输出参数值)的方式进行,一般不支持直接传递参数的引用,即使作为客户端的API网关想要通过传递参数的引用的方式实现远程过程调用,实质也是需要传递参数值的副本给作为服务端的微服务。然而,在涉及大数据处理等的数据密集型应用的场景下,如果通过API网关实现 ...
【技术保护点】
【技术特征摘要】
1.一种基于API网关的远程过程调用处理方法,其特征在于,包括:响应于接收到客户端对第一API接口的访问请求,API网关根据所述第一API接口对应的第一微服务元数据信息生成对目标微服务的第一RPC接口方法的第一RPC调用请求,所述第一微服务元数据信息包括与所述第一RPC接口方法关联的第一输入参数属性和第一输出参数属性;所述API网关拦截所述第一RPC调用请求的第一输入参数值,根据所述第一输入参数属性指示的启用输入参数的引用传递的第一指示,将所述第一输入参数值写入分布式缓存;所述API网关基于引用传递标识和所述第一输入参数值在所述分布式缓存中的第一访问地址信息生成替代所述第一输入参数值的第一替代输入参数,传输给所述目标微服务;所述目标微服务拦截所述第一替代输入参数,当识别到所述第一替代输入参数中的所述引用传递标识时,基于所述第一访问地址信息从所述分布式缓存读取所述第一输入参数值,传递给所述第一RPC接口方法,以基于所述第一输入参数值执行所述第一RPC接口方法。2.根据权利要求1所述的基于API网关的远程过程调用处理方法,其特征在于,所述方法,包括:所述目标微服务拦截执行所述第一RPC接口方法的第一输出参数值,根据所述第一输出参数属性指示的启用输出参数的引用传递的第二指示,将所述第一输出参数值写入所述分布式缓存;所述目标微服务基于所述引用传递标识和所述第一输出参数值在所述分布式缓存中的第二访问地址信息生成替代所述第一输出参数值的第一替代输出参数,传输给所述API网关;所述API网关拦截所述第一替代输出参数,当识别到所述第一替代输出参数中的所述引用传递标识时,基于所述第二访问地址信息从所述分布式缓存读取所述第一输出参数值,传递给所述客户端。3.根据权利要求1所述的基于API网关的远程过程调用处理方法,其特征在于,所述方法,包括:所述目标微服务拦截执行所述第一RPC接口方法的第一输出参数值,根据所述第一输出参数属性指示的不启用输出参数的引用传递的第三指示,将所述第一输出参数值传输给所述API网关;所述API网关拦截所述第一输出参数值,当未识别到所述第一输出参数值中的所述引用传递标识时,将所述第一输出参数值传递给所述客户端。4.根据权利要求2所述的基于API网关的远程过程调用处理方法,其特征在于,所述方法还包括:所述API网关将所述第一输出参数值传递给所述客户端之后,根据所述第一输入参数属性和第一输出参数属性,向所述分布式缓存发送数据删除请求,所述数据删除请求携带所述第一访问地址信息和第二访问地址信息;所述分布式缓存响应于所述数据删除请求,根据所述数据删除请求携带的所述第一访问地址信息和第二访问地址信息删除已存储的所述第一输入参数值和所述第一输出参数值。5.根据权利要求4所述的基于API网关的远程过程调用处理方法,其特征在于,所述方
法包括:响应于接收到客户端对第二API接口的访问请求,所述API网关根据所述第二API接口对应的第二微服务元数据信息生成对所述目标微服务的第二RPC接口方法的第二RPC调用请求,所述第二微服务元数据信息包括与所述第二RPC接口方法关联的第二输入参数属性和第二输出参数属性;所述API网关拦截所述第二RPC调用请求的第二输入参数值,根据所述第二输入参数属性指示的不启用输入参数的引用传递的第四指示,直接将所述第...
【专利技术属性】
技术研发人员:陈大伟,朱路明,张立群,徐莉萍,张庆丰,
申请(专利权)人:徐工汉云技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。