euraka注册中心高可用
- 注册中心作为整个程序的核心,万一注册中心挂掉的话,整个系统就会瘫痪,因此注册中心高可用必然是一种趋势。
- 基于版本1 https://blog.csdn.net/cccfire/article/details/99453834 继续学习
-
源码地址https://github.com/Jacwo/eureka-server 欢迎start 鼓励一下
准备
由于就一台电脑,我这里靠修改host模拟多个ip。
Mac
sudo vi /etc/hosts
添加
127.0.0.1 p1
127.0.0.1 p2
- 新增 application-p1.properties
#提供服务端口 server.port=8672 #提供服务的域名,本地可以使用localhost或者配置hosts测试 eureka.instance.hostname=p1 #关闭向注册中心注册自己 eureka.client.register-with-eureka=false #关闭发现注册服务,注册中心仅用于维护节点 eureka.client.fetch-registry=false #配置注册中心提供服务的url(这里引用上边的配置) eureka.client.serviceUrl.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/
- 新增 application-p2.properties
#提供服务端口 server.port=8673 #提供服务的域名,本地可以使用localhost或者配置hosts测试 eureka.instance.hostname=p2 #关闭向注册中心注册自己 eureka.client.register-with-eureka=false #关闭发现注册服务,注册中心仅用于维护节点 eureka.client.fetch-registry=false #配置注册中心提供服务的url(这里引用上边的配置) eureka.client.serviceUrl.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/
- mvn package 打包
- 指定配置文件启动
-
java -jar target/eureka-server-0.0.1-SNAPSHOT.jar --spring.profiles.active=p2 java -jar target/eureka-server-0.0.1-SNAPSHOT.jar --spring.profiles.active=p1
由于可以实现注册中心的切换。
-
服务提供者参考https://blog.csdn.net/cccfire/article/details/99455466
-
为了测试要修改 euraker-server-provider 的application.properties
-
eureka.client.service-url.defaultZone=http://localhost:8672/eureka/,http://localhost:8673/eureka/
- 开始测试
- 访问http://localhost:8673 http://localhost:8673
- 断掉一个注册中心服务会自动转移到另外一个注册中心
-
-