Dubbo -- 关于 api接口调用不使用强依赖

本文介绍了一种解决Dubbo API强依赖问题的方法,通过在服务端提供一个统一的入口来接收HTTP请求,并利用Dubbo的引用对象进行泛化调用,实现了API的弱依赖。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 

首先,我们都知道  Dubbo 调用api 需要提供暴露  接口,   消费端才通过 ZK 可以调用

通常我们都会使用 提供 api  jar包 的方式 使用  这样既方便又快捷 简单

只需要在spring中配置就ok了.

 

可与此同时,也会有一个问题存在.

那就是  api jar 强依赖,  也就是说   一旦有新的api 需要添加的时候   就需要更新jar包

 

那么如何避免这样的问题.

基于使用的gateway 的思想  阐述一下:

其实很简单.   那就服务提供者还是一样的暴露接口. 这个不变.

但  服务端需要提供一个入口, 也就是我们说的controller      参数请求 分别为    group   api   method    

这里使用 @PathVariable  传递     这样服务端其实就已经知道我们需要调用的接口api 及 method

然后  再通过  Dubbo 提供的  (ReferenceBean)  创建消费   并将我们传递的参数设置给 ReferenceBean   最后调用   genericService.$invoke(method, types, args)  执行请求

这个就相当于我们消费端 在  spring    application中配置的消费端一样 

消费端  使用HttpClient   也就是http请求 请求服务端    这样就可以避免Duboo api jar包强依赖的问题了!

 

同样存在问题   http请求 相对dubbo请求 效率一定不如dubbo;

转载于:https://www.cnblogs.com/dj66194/p/8889147.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值