场景
公司内部的邮件服务器突然宕机,导致springcloud框架的项目中某个通过spring-boot-starter-mail使用邮件服务的微服务在eureka中注册失败,状态为DOWN
原因
开始因为是邮箱服务器连接失败导致微服务启动失败,后来发现微服务是正常启动的。只是在eureka中显示为DOWN状态,原因是该微服务配置了健康检查,health会去检查jdbc,mq,redis等连接情况(假如配置的话),如果任一项连接失败,就会通知eureka当前微服务不可用。
处理方式
1、联系运维恢复邮箱服务器,连接正常后服务会自动正常
2、在application.yml中配置指定的服务不检测
management:
health:
mail:
enabled: false
附
Erueka状态变更说明
STARTING : 表示服务正在启动中
DOWN: 表示服务已经宕机,无法继续提供服务
UP : 服务正常运行
OUT_OF_SERVICE : 不再提供服务,其他的Eureka Client将调用不到该服务,一般有人为的调用接口设置的,如:强制下线。
UNKNOWN: 未知状态