CN113014560A - 一种dubbo服务动态调用方法、计算机设备和存储介质 - Google Patents
一种dubbo服务动态调用方法、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN113014560A CN113014560A CN202110187445.5A CN202110187445A CN113014560A CN 113014560 A CN113014560 A CN 113014560A CN 202110187445 A CN202110187445 A CN 202110187445A CN 113014560 A CN113014560 A CN 113014560A
- Authority
- CN
- China
- Prior art keywords
- dubbo
- calling
- dubbo service
- gateway
- dynamic
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 238000006243 chemical reaction Methods 0.000 claims abstract description 3
- 238000004590 computer program Methods 0.000 claims description 11
- 238000005516 engineering process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/133—Protocols for remote procedure calls [RPC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及一种dubbo服务动态调用方法、计算机设备和存储介质,方法包括步骤:1)加载spring cloud gateway自定义网关拦截器拦截请求;2)对网关请求获取请求地址对应的dubbo调用参数;3)组装步骤2)获取的dubbo调用参数,调用远程dubbo服务;4)获取远程dubbo服务调用结果,将远程dubbo服务调用结果进行格式转换后返回至调用方。与现有技术相比,本发明拓展了spring cloudgateway拦截器,能够实现对dubbo服务的直接转发。
Description
技术领域
本发明涉及互联网技术领域,尤其是涉及一种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服务动态调用方法的流程示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
实施例
如图1所示,本发明涉及一种dubbo服务动态调用方法,该方法基于spring框架实现,该方法包括如下步骤:
步骤一、加载spring cloud gateway自定义网关拦截器拦截请求。
步骤二、数据库获取网关请求地址对应的dubbo调用参数。具体步骤为:
2.1)数据库读取路由目标dubbo协议地址,并判断路由目标地址是否是以dubbo://开头的,若是,则进行下一步,否则,执行网关其他拦截器。
2.2)解析标准的dubbo协议地址,根据该地址获取服务提供方的ip、端口、方法、版本等信息。
步骤三、组装步骤2.2)获取到的dubbo调用参数,使用dubbo官方提供的GenericService调用远程dubbo服务。
步骤四、获取GenericService调用结果,转换为json格式字符串返回给调用方。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种dubbo服务动态调用方法。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种dubbo服务动态调用方法的步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的工作人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (6)
1.一种dubbo服务动态调用方法,其特征在于,该方法基于spring框架实现,包括下列步骤:
1)加载spring cloud gateway自定义网关拦截器拦截请求;
2)对网关请求获取请求地址对应的dubbo调用参数;
3)组装步骤2)获取的dubbo调用参数,调用远程dubbo服务;
4)获取远程dubbo服务调用结果,将远程dubbo服务调用结果进行格式转换后返回至调用方。
2.根据权利要求1所述的dubbo服务动态调用方法,其特征在于,步骤2)具体包括下列步骤:
21)数据库读取网关请求对应路由目标协议地址,并判断该路由目标协议地址是否为dubbo协议地址,若是,则进行下一步,若否,则执行除spring cloud gateway自定义网关拦截器外的网关其他拦截器;
22)解析标准的dubbo协议地址,根据该地址获取服务提供方的ip、端口、方法和版本信息。
3.根据权利要求1所述的dubbo服务动态调用方法,其特征在于,步骤3)中,采用GenericService调用远程dubbo服务。
4.根据权利要求1所述的dubbo服务动态调用方法,其特征在于,步骤4)中,将远程dubbo服务调用结果转换为json格式字符串返回至调用方。
5.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4中任一项所述dubbo服务动态调用方法的步骤。
6.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述dubbo服务动态调用方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110187445.5A CN113014560A (zh) | 2021-02-18 | 2021-02-18 | 一种dubbo服务动态调用方法、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110187445.5A CN113014560A (zh) | 2021-02-18 | 2021-02-18 | 一种dubbo服务动态调用方法、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113014560A true CN113014560A (zh) | 2021-06-22 |
Family
ID=76402585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110187445.5A Pending CN113014560A (zh) | 2021-02-18 | 2021-02-18 | 一种dubbo服务动态调用方法、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113014560A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114205191A (zh) * | 2021-12-13 | 2022-03-18 | 四川启睿克科技有限公司 | 一种api网关系统及运行方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108055248A (zh) * | 2017-11-30 | 2018-05-18 | 平安科技(深圳)有限公司 | 基于dubbo框架的远程调用方法、服务器及存储介质 |
US20200034272A1 (en) * | 2018-07-28 | 2020-01-30 | International Business Machines Corporation | Handling request data with type safety in a remote service |
CN110995746A (zh) * | 2019-12-17 | 2020-04-10 | 神州数码融信软件有限公司 | 异构网络的微服务调用方法及api网关 |
CN111988398A (zh) * | 2020-08-19 | 2020-11-24 | 政采云有限公司 | 一种数据获取方法、api网关、介质 |
CN112073387A (zh) * | 2020-08-19 | 2020-12-11 | 成都精灵云科技有限公司 | 一种微服务分布式权限认证系统 |
-
2021
- 2021-02-18 CN CN202110187445.5A patent/CN113014560A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108055248A (zh) * | 2017-11-30 | 2018-05-18 | 平安科技(深圳)有限公司 | 基于dubbo框架的远程调用方法、服务器及存储介质 |
US20200034272A1 (en) * | 2018-07-28 | 2020-01-30 | International Business Machines Corporation | Handling request data with type safety in a remote service |
CN110995746A (zh) * | 2019-12-17 | 2020-04-10 | 神州数码融信软件有限公司 | 异构网络的微服务调用方法及api网关 |
CN111988398A (zh) * | 2020-08-19 | 2020-11-24 | 政采云有限公司 | 一种数据获取方法、api网关、介质 |
CN112073387A (zh) * | 2020-08-19 | 2020-12-11 | 成都精灵云科技有限公司 | 一种微服务分布式权限认证系统 |
Non-Patent Citations (2)
Title |
---|
CSDN: "《dubbo使用GenericService泛化调用》", 《BLOG.CSDN.NET/A490789580/ARTICLE/DETAILS/88177956》 * |
慕课网: "《Dubbo想要个网关怎么办?试试整合Spring Cloud Gateway》", 《ZHUANLAN.ZHIHU.COM/P/159377157》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114205191A (zh) * | 2021-12-13 | 2022-03-18 | 四川启睿克科技有限公司 | 一种api网关系统及运行方法 |
CN114205191B (zh) * | 2021-12-13 | 2023-09-15 | 四川启睿克科技有限公司 | 一种api网关系统及运行方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109246251B (zh) | 一种微服务调用方法、装置、系统、设备及可读存储介质 | |
US20150295785A1 (en) | Resource Subscription Method and Device | |
KR102080230B1 (ko) | Rest api 서비스의 다중 호출 처리 시스템 및 그 방법 | |
CN112054998A (zh) | 代理服务方法、装置、设备和计算机可读存储介质 | |
CN111818158B (zh) | 网关控制方法、装置、电子设备及存储介质 | |
CN111552568B (zh) | 云服务调用方法和装置 | |
US20230239326A1 (en) | Microservice-Based Service Mesh System and Service Oriented Architecture Governance Method | |
CN112104640A (zh) | 网关的数据处理方法、装置、设备及可读存储介质 | |
CN112583628A (zh) | 核心网能力调用方法及系统 | |
CN108696523B (zh) | 一种通话服务的响应方法及设备 | |
WO2016107120A1 (zh) | 一种应用程序编程接口调用方法及设备 | |
CN113014560A (zh) | 一种dubbo服务动态调用方法、计算机设备和存储介质 | |
CN110933188A (zh) | 远程服务的调用方法、系统、服务器及存储介质 | |
CN114040032A (zh) | 一种协议转换方法、系统、存储介质及电子设备 | |
CN111787097B (zh) | 接口报文转换配置方法、接口报文转换方法及设备 | |
JP6044020B2 (ja) | データパケット処理の方法、システム、およびデバイス | |
WO2020162225A1 (ja) | Enumサーバおよび輻輳制御方法 | |
CN111740967A (zh) | 一种报文转换发送的方法、系统和电子设备 | |
WO2019201111A1 (zh) | 信息处理方法、装置、设备及计算机可读存储介质 | |
JP5896520B2 (ja) | アプリケーションサーバおよび発信地域導出方法 | |
CN111371823B (zh) | 一种非web场景下客户端访问微服务的方法 | |
CN114296985A (zh) | 大规模微服务集群场景下的全局异常处理方法和平台 | |
JP5940990B2 (ja) | Apl−scm−feおよびアプリケーション連携方法 | |
CN115550468A (zh) | 业务请求处理方法、装置、设备及介质 | |
JP2018037971A (ja) | 通信サービス提供システムおよび通信サービス提供方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210622 |