如何在不使用他人jar包的情况下优雅的进行dubbo调用

1、正常dubbo调用流程

引入dubbo依赖
引入他人提供的clinet依赖包;
配置相同的注册中心,使用@Reference注解注入对应的service接口(注意是Reference是dubbo包下的,不是spring那个)

2、如果想在不引用他人jar包的情况下如何调用呢?

dubbo泛化调用-dubbo原生支持的优雅方法
使用场景:

消费者不希望引入生产者提供的clinet依赖;
例如:消费者是一个基础服务,需要调用很多生产者的dubbo方法,那他就要引入很多的jar包;

消费者不使用java语言,而是使用其他的语言(例如:Python);

如何使用:
1.需要知道对方方法的全路径名称(interfaceName)
2.如果对方的dubbo有指定的版本号(version)和组(group)要指定一下,不然有很大可能会调用不通
3.要知道对方的注册中心地址和连接方式(如果是在同一个zk注册中心就更好了)

1.获取泛化对象

private GenericService getGenericService(String interfaceName, String version, String group) {
    ReferenceConfig<GenericService> reference = new ReferenceConfig<GenericService>();
    // set application
    ApplicationConfig applicationConfig = new Ap
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值