Eureka安全下线服务
程序员文章站
2022-04-09 18:17:28
Eureka上的服务是通过心跳检测注册到上面,如果stop或者直接kill掉服务的话,Eureka并不能实时的检测到服务下线,并且如果直接kill还可能杀掉正在处理业务的服务,所以我们要找到一个方法安全下线服务。 一:发送DELETE请求删除服务 http:// ip:port/eureka/v2/ ......
eureka上的服务是通过心跳检测注册到上面,如果stop或者直接kill掉服务的话,eureka并不能实时的检测到服务下线,并且如果直接kill还可能杀掉正在处理业务的服务,所以我们要找到一个方法安全下线服务。
一:发送delete请求删除服务
http:// ip:port/eureka/v2/apps/appid/instanceid
这样能请求eureka删除实例,不过由于心跳机智,实例过一会就会注册上去
二:修改实例状态为out_of_service
修改状态后,此实例会处理完当前正在处理的请求,之后就不再接受新的请求。
三:spring boot actuato
1.引入pom
<dependency>
<groupid>org.springframework.boot</groupid>
<artifactid>spring-boot-starter-actuator</artifactid>
</dependency>
2.参数配置
#启用shutdown
endpoints.shutdown.enabled=true
#禁用密码验证(正式环境应该要有安全策略)
endpoints.shutdown.sensitive=false
3.请求停止服务(经过测试,服务会在处理完请求之后关闭,但是eureka上的实例并没有删除)
参考资料:https://github.com/netflix/eureka/wiki/eureka-rest-operations
上一篇: 越炫耀什么越缺什么
下一篇: SQL 高效运行注意事项(一)