1.linux zookeeper集群安装
linux zookeeper参考:linux安装zookeeper集群模式
2.springBoot+dubbo分布式
springBoot+dubbo教程参考:spring boot dubbo分布式案例教程(附源码)
3.zookeeper集群
zookeeper集群的目的是容错,高可用。
集群弄好后springboot的配置如下:
消费方:
spring.dubbo.registry.address=zookeeper://192.168.1.10:2181?backup=192.168.1.10:2182,192.168.1.10:2183 spring.dubbo.application.name=dubboConsumer spring.dubbo.scan=net.itxw.dubboConsumer.service
服务方:
spring.dubbo.registry.protocol=zookeeper spring.dubbo.registry.address=192.168.1.10:2181,192.168.1.10:2182,192.168.1.10:2183 #spring.dubbo.registry.address=zookeeper://192.168.1.10:2181?backup=192.168.1.10:2182,192.168.1.10:2183 spring.dubbo.application.name=dubboProvider spring.dubbo.scan=net.itxw.dubboProvider.service spring.dubbo.protocol.name=dubbo spring.dubbo.protocol.port=20881 spring.dubbo.monitor.protocol=registry
注意:
集群配置方式1:
spring.dubbo.registry.protocol=zookeeper
spring.dubbo.registry.address=192.168.1.10:2181,192.168.1.10:2182,192.168.1.10:2183
集群配置方式2:
spring.dubbo.registry.address=zookeeper://192.168.1.10:2181?backup=192.168.1.10:2182,192.168.1.10:2183
这两种方式,dubbo官网都有介绍,但没有说区别,我想这两种方式是一致的。
另外:我测试了一下,有三个节点的话,如果两个节点挂掉了,就不可用了。这是选举协议的原因,选举协议也要求要用奇数台服务器。