Nacos
2022-05-19 17:50:55 10 举报
Nacos
作者其他创作
大纲/内容
获取实例
removeInstance调用服务下线
开启定时任务com.alibaba.nacos.naming.core.Service#processClientBeat
将beatInfo对象加到beatReactor对象的dom2Beat集合中加入心跳续约,开启心跳服务(实现runnable开启定时任务)
instance是否临时实例
是
获取serviceId并根据服务信息封装Instance对象
实例是否存在
判断实例健康状态
nacos接收心跳请求
否
当前时间 - 上一次心跳时间 > 实例删除时间(默认30s)
serverProxy.registryService注册服务
遍历实例列表
处理心跳请求
NacosServiceRegistry的registry注册
NamingService.registryInstance注册Instance对象
sendBeat每5s发送心跳请求
注册实例serviceManager.registerInstance
获取服务serviceManager.getService
发布服务变动时间
封装request请求参数url:/nacos/v1/ns/instance
封装心跳对象BeatInfo
删除实例
reqAPI发送注册请求
.ClientBeatProcessor#run设置实例最后心跳时间
收藏
收藏
0 条评论
回复 删除
下一页