Spring Cloud之Eureka Server高可用集群学习

雨点打透心脏的1/2处 2022-06-05 07:41 261阅读 0赞

SpringCloud使用Eureka Server作为注册中心,为了实现高可用,必须集群
此帖子参考http://blog.didispace.com/springcloud6/

感谢翟永超大神给我们提供的博客

代码配置

application.properties

  1. # 每次启动一个备用注册中心只需要修改active即可
  2. spring.profiles.active=peer1
  3. # 不向注册中心注册自己
  4. eureka.client.register-with-eureka=true
  5. # 不检索服务
  6. eureka.client.fetch-registry=true

application-peer1.properties

  1. spring.application.name=eureka-server
  2. server.port=1111
  3. eureka.instance.hostname=peer1
  4. eureka.client.serviceUrl.defaultZone=http://peer2:1112/eureka/,http://peer3:1113/eureka/

application-peer2.properties

  1. spring.application.name=eureka-server
  2. server.port=1112
  3. eureka.instance.hostname=peer2
  4. eureka.client.serviceUrl.defaultZone=http://peer1:1111/eureka/,http://peer3:1113/eureka/

application-peer3.properties

  1. spring.application.name=eureka-server
  2. server.port=1113
  3. eureka.instance.hostname=peer3
  4. eureka.client.serviceUrl.defaultZone=http://peer1:1111/eureka/,http://peer2:1112/eureka/

这里写图片描述

配置Host

将Host文件配置

  1. 127.0.0.1 peer1
  2. 127.0.0.1 peer2
  3. 127.0.0.1 peer3

IDEA设置多实例启动

这里写图片描述

去掉Single instance only选项即可

  • 修改spring.profiles.active=peer1,启动系统
  • 修改spring.profiles.active=peer2,启动系统
  • 修改spring.profiles.active=peer3,启动系统

启动peer1和peer2的时候都会报错,不用管,启动peer3的时候就不会报错了

这里写图片描述

验证

分别访问:
http://localhost:1111/
http://localhost:1112/
http://localhost:1113/

可以看到都含有三个节点,说明集群成功

  1. Instances currently registered with Eureka
  2. Application AMIs Availability Zones Status
  3. EUREKA-SERVER n/a (3) (3) UP (3) - windows10.microdone.cn:eureka-server:1113 , windows10.microdone.cn:eureka-server:1112 , windows10.microdone.cn:eureka-server:1111

只要三个中,存在一个,就可以继续使用系统

发表评论

表情:
评论列表 (有 0 条评论,261人围观)

还没有评论,来说两句吧...

相关阅读