Dubbo多注册中心和Zookeeper服务的迁移

阅读更多
一、Dubbo多注册中心

1、 应用场景

例如阿里有些服务来不及在青岛部署,只在杭州部署,而青岛的其它应用需要引用此服务,就可以将服务同时注册到两个注册中心。

consumer.xml

 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" 
    xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://code.alibabatech.com/schema/dubbohttp://code.alibabatech.com/schema/dubbo/dubbo.xsd"> 
  
     
  
     
     
     
  
     
     
  


2、不同服务使用不同注册中心


比如:CRM有些服务是专门为国际站设计的,有些服务是专门为中文站设计的。

consumer.xml

 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" 
    xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://code.alibabatech.com/schema/dubbohttp://code.alibabatech.com/schema/dubbo/dubbo.xsd"> 
  
     
  
     
     
     
  
     
     
  
     
     
  

3、多注册中心引用


比如:CRM需同时调用中文站和国际站的PC2服务,PC2在中文站和国际站均有部署,接口及版本号都一样,但连的数据库不一样。

consumer.xml

 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" 
    xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://code.alibabatech.com/schema/dubbohttp://code.alibabatech.com/schema/dubbo/dubbo.xsd"> 
  
     
  
     
     
     
  
     
     
  
     
     
  
 

consumer.xml如果只是测试环境临时需要连接两个不同注册中心,使用竖号分隔多个不同注册中心地址:

 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" 
    xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://code.alibabatech.com/schema/dubbohttp://code.alibabatech.com/schema/dubbo/dubbo.xsd"> 
  
     
  
     
     
  
     
     
  
 
二、Dubbo多注册中心的服务迁移
1、顾名思义,将服务从一个地儿迁到另一个地儿,例如从A地迁到B地。

2、如何实现多注册中心的服务迁移

步骤一

     添加B地的注册中心地址,AB两地的注册中心间用英文的|分割,(同一个服务集群的zk节点使用逗号分割)

     例如:dubbo.registry.address=192.168.220.128:2181|192.168.221.129:2181,192.168.221.130:2181,192.168.221.131:2181 这就是两个注册中心配置sample

步骤二

     Jenkins重新构建服务,zk1本身就是含有全部服务的,现在构建是将服务部署到zk2集群中。这样就可实现A的zk和B地的zk两套注册中心享有两套相同的服务

步骤三

     把服务的消费端都构建一遍;

步骤四

     先取消服务消费者调用zk1的服务,具体实施就是去掉第一个zk的配置,然后构建消费者

步骤五

     把服务提供者的配置也取消;然后重新构建服务提供者。这样就完成了将zk1中的所有服务迁移到zk2中,且去除zk1中的所有服务。


Dubbo多注册中心和Zookeeper服务的迁移_第1张图片

vue angular  dubbo  spring 视频


Dubbo多注册中心和Zookeeper服务的迁移_第2张图片

  • Dubbo多注册中心和Zookeeper服务的迁移_第3张图片
  • 大小: 19.2 KB
  • Dubbo多注册中心和Zookeeper服务的迁移_第4张图片
  • 大小: 39.9 KB
  • 查看图片附件

你可能感兴趣的:(企业应用,java,dubbo)