[发明专利]一种dubbo服务动态调用方法、计算机设备和存储介质在审
申请号: | 202110187445.5 | 申请日: | 2021-02-18 |
公开(公告)号: | CN113014560A | 公开(公告)日: | 2021-06-22 |
发明(设计)人: | 吕峰辉;高晓国;杜余波;刘晶 | 申请(专利权)人: | 欧冶云商股份有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08 |
代理公司: | 上海科盛知识产权代理有限公司 31225 | 代理人: | 林君如 |
地址: | 201999 上海市宝山区漠*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 dubbo 服务 动态 调用 方法 计算机 设备 存储 介质 | ||
本发明涉及一种dubbo服务动态调用方法、计算机设备和存储介质,方法包括步骤:1)加载spring cloud gateway自定义网关拦截器拦截请求;2)对网关请求获取请求地址对应的dubbo调用参数;3)组装步骤2)获取的dubbo调用参数,调用远程dubbo服务;4)获取远程dubbo服务调用结果,将远程dubbo服务调用结果进行格式转换后返回至调用方。与现有技术相比,本发明拓展了spring cloudgateway拦截器,能够实现对dubbo服务的直接转发。
技术领域
本发明涉及互联网技术领域,尤其是涉及一种dubbo服务动态调用方法、计算机设备和存储介质。
背景技术
随着互联网行业的安全性及实时性要求的不断提升,也对技术提出了更高的要求。spring cloud gateway是spring开源的基于netty的高性能网关框架,提供功能强大的网关路由管理功能。spring cloud gateway的目标,不仅提供统一的路由方式,并且基于Filter链的方式提供了网关基本的功能,例如:安全,监控/指标和限流。而随着互联网数据容量、流量的不断增加,常规的垂直应用架构已无法应对,于是架构迎来了演变,Dubb技术即是其中之一的演变架构技术。
Dubbo技术是阿里巴巴公司开源的一个高性能优秀的服务框架,该框架能够使得应用可通过高性能的远程过程调用(RPC)实现服务的输出和输入功能。它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。然而因Spring cloud gateway只支持http协议转发,这使得网关无法直接转发dubbo服务接口,限制了网关的使用场景。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种dubbo服务动态调用方法、计算机设备和存储介质。
本发明的目的可以通过以下技术方案来实现:
一种dubbo服务动态调用方法,该方法基于spring框架实现,具体包括如下步骤:
S1:加载spring cloud gateway自定义网关拦截器拦截请求;
S2:对网关请求获取请求地址对应的dubbo调用参数;具体地:
21)数据库读取网关请求对应路由目标协议地址,并判断该路由目标协议地址是否为dubbo协议地址,若是,则进行下一步,若否,则执行除spring cloud gateway自定义网关拦截器外的网关其他拦截器;
22)解析标准的dubbo协议地址,根据该地址获取服务提供方的ip、端口、方法和版本信息。
S3:组装步骤S2获取的dubbo调用参数,调用远程dubbo服务;
进一步地,采用GenericService调用远程dubbo服务。
S4:获取远程dubbo服务调用结果,将远程dubbo服务调用结果进行格式转换后返回至调用方。
进一步地,将远程dubbo服务调用结果转换为json格式字符串返回至调用方。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述dubbo服务动态调用方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述dubbo服务动态调用方法的步骤。
与现有技术相比,本发明拓展了spring cloud gateway拦截器,能够实现对dubbo服务的直接转发,有利于扩大网关的使用场景。
附图说明
图1为实施例中dubbo服务动态调用方法的流程示意图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于欧冶云商股份有限公司,未经欧冶云商股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110187445.5/2.html,转载请声明来源钻瓜专利网。