美文网首页
服务下线四种方式

服务下线四种方式

作者: 咪雅先森 | 来源:发表于2019-05-05 18:08 被阅读0次

服务下线四种方式

这里指已经在 Eureka 注册中心注册的服务,如果需要停用,有四种方式进行停用。

1.直接关闭

最粗暴。
写这个是因为,直接关闭,如果 Eureka 开了保护模式,会导至服务已关闭,但是未下线,还是会重试调用。如果不需强稳定性的话可以这么干。

2.客户端主动通知注册中心下线

安全。
Eureka注册中心在收到某个客户端下线后不会马上通知所有的注册的客户端,而是等到客户端进行心跳的时候(心跳(续约)频率,默认30秒 )再将下的数据返回。通过这种方式下线的话,可以在某个服务下线后防止其他服务调用此服务失败。

白话就是,服务状态下线了,但是不通知其他服务。等到续约时间到了,再通知所有注册服务。

猜测,服务下线后,在没有心跳前,其他服务还是可以进行调用。等到心跳后,通知所有服务已下线,其他服务认为已下线,就不会再调该下线服务。

   @Autowired
   private DiscoveryClient client;
   @ResponseBody
   @GetMapping("/eurekaUnRegister")
   public String shutDown() {
       eurekaClient.shutdown();
       return "eurekaUnRegistering";
   }

 @RequestMapping(value = "/offline", method = RequestMethod.GET)
 public void offLine(){
   DiscoveryManager.getInstance().shutdownComponent();
 }  

3.调用接口方式下线

http://10.168.62.58:9999/message/actuator/shutdown

返回结果

{
   "message": "Shutting down, bye..."
}

本地起机器后,调试结果

结果就是服务线程关闭,服务停止:

Stopping beans in phase 2147483647
Stopping beans in phase 0
Unregistering JMX-exposed beans on shutdown
DiscoveryClient_GROUP-MESSAGE/group-message-provider-704 - registration status: 204
Shutting down DiscoveryClient ...
Unregistering ...
DiscoveryClient_GROUP-MESSAGE/group-message-provider-704 - deregister  status: 200

网上博客https://blog.csdn.net/memmsc/article/details/78122962

4.修改服务状态

这种方式,服务不会停止,只是状态变为 DOWN,适合禁用该服务的操作。
DOWN 禁用
UP 启用
http://10.168.62.58:9999/message/actuator/service-registry

{
       "status": "UP"
}

sprinng boot 2.0 以上需要添加额外配置才能生效,否则报404

management:
 endpoints:
   web:
     exposure:
       include: "*"                #包含的路径,可以单个如 info
 endpoint:
   shutdown:
     enabled: true                #开启shutdown 关闭

相关文章

  • 服务下线四种方式

    服务下线四种方式 这里指已经在 Eureka 注册中心注册的服务,如果需要停用,有四种方式进行停用。 1.直接关闭...

  • Eureka系列(七) 服务下线Server端具体实现

    服务下线的大致流程图   下面这张图很简单地描述了Server端服务下线的大致流程: 服务下线Server端实现源...

  • 2018-08-21day-26

    web方向:php、java、python,服务端的语言客户端===服务端0、js引入方式和打印方式四种引入方式(...

  • 分布式多线程线程池

    说到多线程,概念性东西就不一一赘述了,首先回顾下线程的创建。 Java线程创建的四种方式 1.继承Thread类,...

  • 服务优雅下线

    前言 在生产环境中,如何保证在服务升级的时候,不影响用户的体验,这个是一个非常重要的问题。如果在我们升级服务的时候...

  • 灰度发布-Openresty+lua实现动态upstream

    动态的负载均衡控制;平滑上下线服务,升级服务;高可能保证–自动踢离线服务下线;具体思路利用lua中 "lua_sh...

  • Eureka Server的5个监听事件

    EurekaInstanceCanceledEvent 服务下线事件 EurekaInstanceRegister...

  • 【MySQL】6.0 入门学习(六)——MySQL启动与停止、官

    1.0 MySQL主要有四种启动方式:直接启动、安全启动、服务启动、多实例启动。 直接启动: ​ 服务器启动: ​...

  • Linux下MySQL的启动方式

    Linux下MySQL的启动方式 在Linux系统下,MySQL服务器通常有四种启动方式:mysqld守护进程启动...

  • Get与Post区别

    HTTP请求方式中基本的有"get"、"post"、"put"、"delete"四种方式。对应的分别为对服务器的:...

网友评论

      本文标题:服务下线四种方式

      本文链接:https://www.haomeiwen.com/subject/cpnhoqtx.html