dubbo
dubbo copied to clipboard
配置多个不同的ProtocolConfig,调用服务报Not found exported service。
dubbo version: 3.0.10
由于业务场景在部分二方包内手动初始化了Registry, Application以及Protocol等, 并且编程式的暴露服务 serviceConfig.export();
当业务引用了二方包, 并且自己配置了一份 Protocol。在调用我们提供的二方包时就会报Not found exported service ... may be version or group mismatch
看着是应用级注册时进行了覆盖, org.apache.dubbo.registry.client.metadata.ServiceInstanceHostPortCustomizer#customize 该方法在选取host与port的时候只过滤了第一个protocol相同的地址, 但是不同Protocol的会放在同一个Metadata内, 导致应用级暴露时只暴露了一个Protocol地址
dubbo version: 3.0.10
由于业务场景在部分二方包内手动初始化了Registry, Application以及Protocol等, 并且编程式的暴露服务 serviceConfig.export();
当业务引用了二方包, 并且自己配置了一份 Protocol。在调用我们提供的二方包时就会报Not found exported service ... may be version or group mismatch
看着是应用级注册时进行了覆盖, org.apache.dubbo.registry.client.metadata.ServiceInstanceHostPortCustomizer#customize 该方法在选取host与port的时候只过滤了第一个protocol相同的地址, 但是不同Protocol的会放在同一个Metadata内, 导致应用级暴露时只暴露了一个Protocol地址
升级到 3.1.1 看一下
dubbo version: 3.0.10 由于业务场景在部分二方包内手动初始化了Registry, Application以及Protocol等, 并且编程式的暴露服务 serviceConfig.export(); 当业务引用了二方包, 并且自己配置了一份 Protocol。在调用我们提供的二方包时就会报Not found exported service ... may be version or group mismatch 看着是应用级注册时进行了覆盖, org.apache.dubbo.registry.client.metadata.ServiceInstanceHostPortCustomizer#customize 该方法在选取host与port的时候只过滤了第一个protocol相同的地址, 但是不同Protocol的会放在同一个Metadata内, 导致应用级暴露时只暴露了一个Protocol地址
升级到 3.1.1 看一下
试了一下 还是一样的表现. Not found exported service, service in [..] , may be version or group mismatch
可以提供一个可以复现的 demo 我们验证下吗
可以提供一个可以复现的 demo 我们验证下吗
看这个例子 https://github.com/lphu/dubbo-demo
HelloService可以正常调用, HelloService2调用时会Not found exported service
可以提供一个可以复现的 demo 我们验证下吗
看这个例子 https://github.com/lphu/dubbo-demo
HelloService可以正常调用, HelloService2调用时会Not found exported service
@lphu demo 使用 3.1.1 版本的 dubbo 是可以正常请求的
可以提供一个可以复现的 demo 我们验证下吗
看这个例子 https://github.com/lphu/dubbo-demo HelloService可以正常调用, HelloService2调用时会Not found exported service
@lphu demo 使用 3.1.1 版本的 dubbo 是可以正常请求的
![]()
![]()
有没有哪个issue或者PR修复了该问题?
https://github.com/apache/dubbo/pull/10606