高可用注册中心
image
如上图所说的,所以我们要配置一个注册中心集群
**搭建步骤 **
修改配置文件
server:
port: 1111
eureka:
client:
register-with-eureka: true # 修改为true
fetch-registry: true # 修改为true,让他可以注册自己
serviceUrl:
defaultZone: http://localhost:1112/eureka/ # 指向另一个注册中心
在创建一样的注册中心,只需修改配置文件,其他一样
server:
port: 1112
eureka:
client:
register-with-eureka: true # 修改为true
fetch-registry: true # 修改为true,让他可以注册自己
serviceUrl:
defaultZone: http://localhost:1111/eureka/ # 指向另一个注册中心
启动两个注册中心,首先启动的注册者会去查找备用的注册中心,因为还没有启动,会显示找不到报错。当启动第二个注册中心时,第一个会定时的去查找一遍。两个就都启动成功。无报错。
分别访问http://localhost:1111/
和http://localhost:1112/
发现他们分别显示在对方的列表中
修改服务提供者的配置文件
spring:
application:
name: cloud-user
server:
port: 3333
eureka:
client:
serviceUrl:
defaultZone: http://localhost:1111/eureka/,http://localhost:1112/eureka/ #添加两个注册中心地址
在重新启动两个注册中心,一个服务提供者,看到这个服务分别在两个注册中心都注册了。当其中一个注册中心关闭时,因为该服务也像另一个注册中心注册了,所以服务提供者依然是可用的。