运行实例关闭监听管理器io.elasticjob.lite.internal.instance.ShutdownListenerManager
会启动实例关闭状态监听器io.elasticjob.lite.internal.instance.ShutdownListenerManager.InstanceShutdownStatusJobListener
。该监听器如果检测到自己(当前实例ID)在zk中的实例节点jobName/instance/实例ID
被移除时会关闭当前实例。
关闭实例
-
如果自己是leader,则删除自己leader标志,触发重新选举;
if (leaderService.isLeader()) { leaderService.removeLeader(); }
-
监控服务关闭;
monitorService.close();
-
如果reconcile服务运行中,则进行关闭;
if (reconcileService.isRunning()) { reconcileService.stopAsync(); }
-
终止本地调度。
JobRegistry.getInstance().shutdown(jobName);
网友评论