《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》

摘要: 原创出处 https://www.jianshu.com/p/29d36e2e9395 「黄云斌」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注**微信公众号:【芋道源码】**有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言将得到认真回复。甚至不知道如何读源码也可以请教噢
  4. 新的源码解析文章实时收到通知。每周更新一篇左右
  5. 认真的源码交流微信群。

先看如何处理http心跳请求

然后就会更新这个ip的最后心跳时间

这个最后的心跳时间有什么用呢,有个定时任务每5s会检查是不是太久没心跳,如果没心跳就下线掉这个实例。

再看具体怎么发起心跳

先是构一个nacos

NamingService naming = NamingFactory.createNamingService(properties);

就会创建一个BeatReactor

会创建BeatProcessor

接着是BeatTask

终于看到心跳请求了

注意这里是像所有的nacos服务中心服务器发送心跳

文章目录
  1. 1. 先看如何处理http心跳请求
    1. 1.1. 然后就会更新这个ip的最后心跳时间
    2. 1.2. 这个最后的心跳时间有什么用呢,有个定时任务每5s会检查是不是太久没心跳,如果没心跳就下线掉这个实例。
  2. 2. 再看具体怎么发起心跳
    1. 2.1. 先是构一个nacos
    2. 2.2. 就会创建一个BeatReactor
    3. 2.3. 会创建BeatProcessor
    4. 2.4. 接着是BeatTask
    5. 2.5. 终于看到心跳请求了