dubbo icon indicating copy to clipboard operation
dubbo copied to clipboard

dubbo:reference

Open khy666 opened this issue 3 years ago • 11 comments

在dubbo2.7.8中xml配置文件dubbo:reference不生效,以及ymal中没有dubbo.reference这个属性

khy666 avatar Oct 09 '22 02:10 khy666

please try 3.0.12 or 3.1.1 for the latest versioin

AlbumenJ avatar Oct 10 '22 02:10 AlbumenJ

我改如何配置所有的service中的查询方法可以重试,修改等方法不可重试。 替代项目中的这种配置: <dubbo:service interface="com..Service" ref="serviceImpl"> <dubbo:method name="insert" retries="0"/> </dubbo:service> dubbo中的service会越来越多,类似于这样的配置也会越来越多。

khy666 avatar Oct 19 '22 05:10 khy666

我改如何配置所有的service中的查询方法可以重试,修改等方法不可重试。 替代项目中的这种配置: <dubbo:service interface="com..Service" ref="serviceImpl"> <dubbo:method name="insert" retries="0"/> </dubbo:service> dubbo中的service会越来越多,类似于这样的配置也会越来越多。

可以使用 Dubbo 注解的方式配置。因为 method 级别的配置是需要绑定接口的,无法实现全局统一配置(不同接口的定义可能是不一样的)。

AlbumenJ avatar Oct 20 '22 02:10 AlbumenJ

我改如何配置所有的service中的查询方法可以重试,修改等方法不可重试。替代项目中的这种配置: <dubbo:service interface=“com..Service“ ref=”serviceImpl“> <dubbo:方法名称=”insert“ 重试=”0“/> </dubbo:service> dubbo中的服务ice会越来越多,类似于这样的配置也会越来越多。

可以使用 Dubbo 注解的方式配置。因为 Method 级别的配置是需要绑定接口的,无法实现全局统一配置(不同接口的定义可能是不一样的)。

使用Dubbo注解,每个service都要写重复的方法,非常臃肿。

khy666 avatar Oct 20 '22 03:10 khy666

我使用BeanPostProcessor这个接口,在每次bean的初始化后,判断该bean的类型,属于ServiceConfig就往里面塞我写好的methods

khy666 avatar Oct 20 '22 03:10 khy666

我使用BeanPostProcessor这个接口,在每次bean的初始化后,判断该bean的类型,属于ServiceConfig就往里面塞我写好的methods

Dubbo 也提供了 ConfigPostProcessor 可以处理配置,通过实现 ConfigPostProcessor 这个 SPI 可以在服务启动的时候修改配置

AlbumenJ avatar Oct 20 '22 03:10 AlbumenJ

有类似通配符匹配某些方法不可重试的配置吗? 类似 insert*,update*

khy666 avatar Oct 21 '22 05:10 khy666

有类似通配符匹配某些方法不可重试的配置吗? 类似 insert*,update*

可以在 ConfigPostProcessor 里面自己匹配的

@SPI(scope = ExtensionScope.MODULE)
public interface ConfigPostProcessor {

    default void postProcessReferConfig(ReferenceConfig referenceConfig) {
     // 直接读取 referenceConfig 并修改就行
    }

    default void postProcessServiceConfig(ServiceConfig serviceConfig) {

    }
}

AlbumenJ avatar Oct 22 '22 07:10 AlbumenJ