Loading

Eureka健康检查

健康检查效果

由于server和client通过心跳保持服务状态,而只有状态为UP的服务才能被访问

看eureka界面中的status

比如心跳一直正常,服务一直UP,但是此服务DB连不上了,无法正常提供服务

  • 我们需要将微服务的健康状态也同步到server
  • 只需要启动eureka的健康检查就行
  • 这样微服务就会将自己的健康状态同步到eureka

配置如下即可

在client端配置:将自己的健康状态传播到server

eureka:
  client:
    healthcheck:
      enabled: true

健康检查组件

Eureka 配置

  • EurekaServerConfigBean:Eureka Server配置
  • EurekaInstanceConfigBean:Eureka Client实例配置
  • EurekaClientConfigBean:Eureka Client 客户端和服务端交互配置

1. instanceId。
2. 通过ip注册。
3. 配置服务快速下线。

server:
eureka:
  server: 
      #关闭自我保护
    enable-self-preservation: false
    #清理服务间隔时间,毫秒
    eviction-interval-timer-in-ms: 5000

client:
eureka: 
  client:
    healthcheck:
      #开启健康检查,需要引入actuator
      enabled: true
  instance: 
    #发送心跳给server的频率,每隔这个时间会主动心跳一次
    lease-renewal-interval-in-seconds: 1      
    #Server从收到client后,下一次收到心跳的间隔时间。超过这个时间没有接收到心跳EurekaServer就会将这个实例剔除
    lease-expiration-duration-in-seconds: 1  

如果设置了

server:
    servlet:
        path: /path

需要

eureka:
    instance:
        statusPageUrlPath: ${server.servlet.path}/actuator/info
        healthCheckUrlPath: ${server.servlet.path}/actuator/health
posted @ 2021-03-06 01:18  BigBender  阅读(587)  评论(0编辑  收藏  举报