Dubbo 注解配置及启动检查

2019-01-04  本文已影响0人  你值得拥有更好的12138

一.dubbo注解配置

1.首先配置registryConfig 注册中心
2.配置applictionConifg 和 consumerConfig/providerConfig配置(可选)
3.配置dubbo 注解扫描包
4.使用@Service,@Reference注解消费者提供者

@Configuration
public class DubboConfiguration {

    @Bean
    public ApplicationConfig applicationConfig() {
        ApplicationConfig applicationConfig = new ApplicationConfig();
        applicationConfig.setName("provider-test");
        return applicationConfig;
    }

    @Bean
    public RegistryConfig registryConfig() {
        RegistryConfig registryConfig = new RegistryConfig();
        registryConfig.setAddress("zookeeper://127.0.0.1:2181");
        registryConfig.setClient("curator");
        return registryConfig;
    }
}

配置完基础设置后,配置扫描路径

@SpringBootApplication
@DubboComponentScan(basePackages = "com.alibaba.dubbo.test.service.impl")
public class ProviderTestApp {
    // ...
}

使用注解标记

public class AnnotationConsumeService {

    @com.alibaba.dubbo.config.annotation.Reference
    public AnnotateService annotateService;
    
    // ...
}

注解属性与配置文件方式一致。

二.dubbo关闭启动检查

<dubbo:reference interface="com.foo.BarService" check="false" />

dubbo.reference.com.foo.BarService.check=false

java -Ddubbo.reference.com.foo.BarService.check=false

dubbo默认是在启动时,检查我所引用的服务接口是否存在,如果不存在即抛出异常。所以都是先启动提供者,再启动消费者。但是有些情况是可以不在启动时候,检查。
1.spring容器是懒加载的
2.使用代码API方式延迟加载
3.存在循环依赖的情况
这些情况都可以关闭启动检查

优先级为:jvm 参数 > xml > properties

幂等性和分布式事务关系

上一篇 下一篇

猜你喜欢

热点阅读