一、Eureka高可用机制介绍

从零开始学spring cloud(八) -------- Eureka 高可用机制

Eureka服务器没有后端存储,但注册表中的服务实例都必须发送心跳以使其注册保持最新(因此可以在内存中完成)。 客户端还有一个Eureka注册的内存缓存(因此,他们不必为服务的每个请求转到注册表)。

默认情况下,每个Eureka服务器也是Eureka客户端,并且需要(至少一个)服务URL来定位对等体。 如果您不提供该服务,该服务将运行并正常运行,但它会在您的日志中填充很多关于无法向对等方注册的噪音。

二、实现Eureka高可用

从零开始学spring cloud(八) -------- Eureka 高可用机制

两个缓存(客户端和服务器)和心跳的组合使得独立的Eureka服务器能够非常适应故障,只要有某种监视器或弹性运行时(例如Cloud Foundry)使其保持活动状态即可。 在独立模式下,您可能更愿意关闭客户端行为,以便它不会继续尝试并且无法访问其对等方。 以下示例显示如何关闭客户端行为:

下面看一下项目中,是如何应用的,看一下配置文件

spring:
  application:
    name: EUREKA-HA
  security:
    user:
      name: user
      password: password123
---
server:
  port: 8761
spring:
  profiles: peer1
eureka:
  instance:
    hostname: peer1
  client:
    serviceUrl:
      defaultZone: http://user:password123@peer2:8762/eureka/,http://user:password123@peer3:8763/eureka/
---
server:
  port: 8762
spring:
  profiles: peer2
eureka:
  instance:
    hostname: peer2
  client:
    serviceUrl:
      defaultZone: http://user:password123@peer1:8761/eureka/,http://user:password123@peer3:8763/eureka/
---
server:
  port: 8763
spring:
  profiles: peer3
eureka:
  instance:
    hostname: peer3
  client:
    serviceUrl:
      defaultZone: http://user:password123@peer1:8761/eureka/,http://user:password123@peer2:8762/eureka/

 

idea启动配置中,做如下配置:

从零开始学spring cloud(八) -------- Eureka 高可用机制

 

 在系统的hosts中,增加127.0.0.1 peer1 peer2 peer3

然后启动3个项目,通过浏览器访问任意一个eureka,就可以出现如下的界面,

从零开始学spring cloud(八) -------- Eureka 高可用机制

 

相关文章:

  • 2021-11-02
  • 2021-09-02
  • 2021-06-22
  • 2021-08-06
  • 2021-10-05
  • 2021-09-04
  • 2021-09-09
  • 2021-07-09
猜你喜欢
  • 2021-12-27
  • 2022-02-28
  • 2021-06-20
  • 2021-11-29
  • 2021-11-27
  • 2022-12-23
  • 2021-09-12
相关资源
相似解决方案