最近在 SpringCloud 项目中发现 Eureka 注册中心的微服务会显示异常,明明服务已经下线,但是注册中心还显示的可使用状态,以至于许多分发在该下线的服务时,造成很多错误。
1. 强制恢复服务:UP
PUT请求:
http://serverip:port/eureka/apps/SERVICE-NAME/instance-name/status?value=UP
2. 强制下线服务:DOWN
PUT请求:
http://serverip:port/eureka/apps/SERVICE-NAME/instance-name/status?value=DOWN
3. 强制剔除服务:OUT_OF_SERVICE
PUT请求:
http://serverip:port/eureka/apps/SERVICE-NAME/instance-name/status?value=OUT_OF_SERVICE
注意:强制设置后状态将会覆盖真实状态,谨慎操作!!如果需要取消强制设置,将 PUT 请求改为 DELETE 请求即可!!!
Operation | HTTP action | Description |
---|---|---|
注册新实例(上线) | POST /eureka/v2/apps/appID | Input: JSON/XMLpayload HTTPCode: 204 on success |
删除一个实例(下线) | PUT /eureka/v2/apps/appID/instanceID | HTTP CODE: 200 SUCCESS |
发送应用程序实例心跳 | PUT /eureka/v2/apps/appID/instanceID | HTTP CODE: 200 SUCCESS 404 if instanceID doesn’t exist |
查询所有实例 | GET /eureka/v2/apps | HTTP Code: 200 on success Output: JSON/XML |
查询所有实例ID | GET /eureka/v2/apps/appID | HTTP Code: 200 on success Output: JSON/XML |
查询特定的appID/instanceID | GET /eureka/v2/apps/appID/instanceID | HTTP Code: 200 on success Output: JSON/XML |
查询特定的instanceID | GET /eureka/v2/instances/instanceID | HTTP Code: 200 on success Output: JSON/XML |