四.Nacos 1.3.1 源码解读之服务续约

167 阅读1分钟

1.Nacos客户端

Nacos客户端启动的时候.会执行BeatReactor.run()方法,

此方法的作用:定时的向服务器发送心跳请求,默认5s

/nacos/v1/ns/instance/beat

2.Nacos服务器端

1).当服务器端接收到客户端的心跳请求时

,会先判断当前请求客户端instance是否存在,如果不在则将

会执行注册instance方法

InstanceController.beat(HttpServletRequest request)

2).执行serviceManager.registerInstance(namespaceId, serviceName, instance)方法

3).开启ClientBeatProcessor线程,进行服务的续约,

将当前instance的最新更新时间修改为当前的系统时间

instance.setLastBeat(System.currentTimeMillis());

service.processClientBeat(clientBeat);