出现这个状态的原因是spring cloud在检测注册服务健康状态时出现了问题,网上提供的方法都是开启健康状态检测,或者是配置的位置不对,但这都只是针对配置而言的,下边是我的方法:
-
查看依赖,检测健康状态需要提供一个/health接口,这个是有spring boot的spring-boot-actuator提供的服务,但是在spring-boot中使用,我们引入平时使用的这个依赖就会出现问题,需要引入如下配置:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-actuator-autoconfigure</artifactId> </dependency>
-
查看配置,如果环境没有问题然后才是检测配置
eureka: instance: hostname: localhost lease-expiration-duration-in-seconds: 30 #表示服务端多长时间没有接受到心跳信息后可以删除自己 lease-renewal-interval-in-seconds: 10 #表示需要要向服务端发送信息,表示自己还活着 client: service-url: defaultZone: http://${eureka.instance.hostname}:3001/eureka/ fetch-registry: true register-with-eureka: true healthcheck: enabled: true #开启健康检测
-
如果配置了健康检测,那么看看配置位置是否正确,和网上说的一样,这个配置需要配置在application.properties或application.yml配置文件中