SpringCloud:服务注册与发现之zookeeper(springcloud可以使用什么作为分布式注册中心)

注册中心:zookeeper

服务提供者

1.建moudle

新建cloud-provider-payment8004微服务模块

2.写pom

与之前不同的是需要导入 springboot整合zookeeper的包

pom.xml

3.写yml

application.yaml

4.启动类

PaymentMain8004

5.业务类

controller

6测试

访问:http://127.0.0.1:8004/payment/zk

SpringCloud:服务注册与发现之zookeeper(springcloud可以使用什么作为分布式注册中心)

SpringCloud:服务注册与发现之zookeeper(springcloud可以使用什么作为分布式注册中心)

肯遇到的问题

spring-cloud-starter-zookeeper-discovery自带zookeeper3.5.3

如果安装的zookeeper版本高于3.5.3则不会出现冲突报错。我是3.5.7没有报错
报错解决方案:排除引入的3.5.3-beta,引入与安装的zookeeper对应的版本

SpringCloud:服务注册与发现之zookeeper(springcloud可以使用什么作为分布式注册中心)

思考

注册到zookeeper的微服务是一个zNode节点,这个节点是临时节点还是持久节点?
我们在注册的时候会生成一个流水号id,我们将服务断开,发现刚断开时zookeeper还保存着该服务,等待一段时间后,该节点被删除。所以是临时节点。重新启动8004的微服务,可以看到生成了一个新的流水号id

SpringCloud:服务注册与发现之zookeeper(springcloud可以使用什么作为分布式注册中心)

服务消费者

1建moudle

新建cloud-consumerzk-order80

2.pom

和8004的一样

pom.xml

3.yml

application.yaml

4.主启动类

ConsumerMain80

5.配置类

config.ApplicationContextConfig

6.业务类

OrderZKController

测试:

访问:  http://127.0.0.1/consumer/payment/zk

SpringCloud:服务注册与发现之zookeeper(springcloud可以使用什么作为分布式注册中心)

zookeeper集群的搭建

zookeeper:集群-集群操作(选举机制)

正文完
 0