Javaconfig形式配置Dubbo多注冊中心


多注冊中心,一般用不到,但是某些情況下的確能解決不少問題,可以將某些dubbo服務注冊到2套dubbo系統中,實現服務在2套系統間的共用.

網上的配置說明很多,但包括dubbo官方說明文檔都是以xml文件配置方式舉例.

如想采用javaconfig的配置方式,則只需要對provider中的配置做適當修改,如下所示:

    @Bean
    public RegistryConfig registryConfig() {
        RegistryConfig registryConfig = new RegistryConfig();
        registryConfig.setAddress(env.getProperty("dubbo.registry.address"));
        return registryConfig;
    }
    @Bean
    public RegistryConfig registryConfig2() {
        RegistryConfig registryConfig = new RegistryConfig();
        registryConfig.setAddress(env.getProperty("dubbo.registry.address"));
registryConfig.setDefault(false); //其它的都設置為非默認注冊中心
return registryConfig; }

只需要將第二套注冊中心設置為非默認地址.然后在注冊服務的時候指定注冊中心地址即可:

@Service(version = "1.0.0",registry = {"registryConfig","registryConfig2"})
public class ServiceImpl implements Service{

    .....

}

如果不在@Bean中指定beanName,則默認使用方法名稱,否則使用指定的beanName進行注冊.

通過以上配置后此服務便注冊到2套注冊中心中,此服務同時也被2套dubbo系統共用.

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM