eureka集群

我会带着你远行 2022-05-10 04:58 283阅读 0赞

开发十年,就只剩下这套Java开发体系了 >>> hot3.png

1、eureka集群的目的

  1. eureka作为注册中心,单点存在风险,如果挂了,就会找不到服务了。

2、euerka server

  1. 我们以三个节点为例,application.yml配置如下
  2. ---
  3. spring:
  4. profiles: peer1
  5. eureka:
  6. instance:
  7. hostname: peer1
  8. client:
  9. serviceUrl:
  10. defaultZone: http://peer1/eureka/,http://peer2/eureka/
  11. ---
  12. spring:
  13. profiles: peer2
  14. eureka:
  15. instance:
  16. hostname: peer2
  17. client:
  18. serviceUrl:
  19. defaultZone: http://peer1/eureka/,http://peer3/eureka/
  20. ---
  21. spring:
  22. profiles: peer3
  23. eureka:
  24. instance:
  25. hostname: peer3
  26. client:
  27. serviceUrl:
  28. defaultZone: http://peer1/eureka/,http://peer2/eureka/
  29. 此时访问peer1的注册中心:http://peer1/。registered-replicas中已经有peer2、peer3节点的eureka-server了。
  30. 同样地,访问peer2的注册中心:http://peer2/,registered-replicas中已经有peer1、peer3节点,并且这些节点在可用分片(available-replicase)之中。
  31. 我们也可以尝试关闭peer1,刷新http://peer2/,peer1的节点变为了不可用分片(unavailable-replicas)。
  32. **注意:**
  33. 两两注册的方式可以实现集群中节点完全对等的效果,实现最高可用性集群,任何一台注册中心故障都不会影响服务的注册与发现。

3、eureka client

  1. server:
  2. port: 8080
  3. spring:
  4. application:
  5. name: eureka-ha-demo
  6. eureka:
  7. client:
  8. service-url:
  9. defaultZone: http://peer1/eureka,http://peer2/eureka,http://peer3/eureka

或者

  1. server:
  2. port: 8080
  3. spring:
  4. application:
  5. name: eureka-ha-demo
  6. eureka:
  7. client:
  8. service-url:
  9. defaultZone: http://peer1/eureka
  10. client端只连接一个peer1,也会把注册信息同步到peer2peer3中的。
  11. 因为Eureka Server的同步遵循着一个非常简单的原则:只要有一条边将节点连接,就可以进行信息传播与同步。

发表评论

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

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

相关阅读

    相关 Eureka配置

    如果注册中心是单点的话,遇到故障就是毁灭性的。在一个分布式系统中,服务注册中心是最重要的基础部分,理应随时处于可以提供服务的状态。为了维持其可用性,使用集群是很好的解决方案。E