微服务引擎MSE

应用服务重启后健康状态正常但处于下线状态问题

2025-05-28 08:24:52

本文介绍如何解决应用服务重启后健康状态正常但处于下线状态的问题。

问题现象

应用服务在重启或发布后,在Nacos上查询该服务的上线状态为下线,但健康状态为正常的绿点。

可能原因

应用服务在注册该服务时,将enabled字段设置为false。

在应用停止时,调用过OpenAPI enabled字段设置为false。在1分钟内又重新注册回Nacos,下线的元数据没有因为过期被删除而被重新复用。

解决方案

(1) 在应用订阅者节点上查找Nacos-Client的日志。

(2) 过滤关键字REGISTER-SERVICE并找到注册服务提供者的日志信息,查看提供者详细信息中的enabled字段。

如果注册时enabled字段值为false。则修改应用启动时,注册服务提供者的enabled字段值为true,或者删去对enabled字段的设置(其默认值已为true)。或通过OpenAPI 更新实例,将enabled字段设置为true。

如果注册时enabled字段值为true。则移除程序停止时自动调用OpenAPI修改的enabled字段。确保停止服务提供者(注销、自动移除)和重新注册服务提供者的间隔大于1分钟。在服务提供者确认自身启动完毕后,调用Nacos OpenAPI v1版本中的修改实例或OpenAPI v2版本中的更新实例,设置enabled字段为true。


tBesWSaMQswR