LeaderExecutionCallback回调接口分析

2019-07-10  本文已影响0人  gmdqtd

接口描述如下:

/**
 * 当节点被选为leader时调用的回调接口.
 * 
 */
public interface LeaderExecutionCallback {
    
    /**
     * 节点选中之后执行的回调方法.
     */
    void execute();
}

实现类是在LeaderService中的内部类,具体实现如下:

public final class LeaderService {
    class LeaderElectionExecutionCallback implements LeaderExecutionCallback {
        
        @Override
        public void execute() {  
             
            if (!hasLeader()) {//判断zk中当前PATH是否存在
                jobNodeStorage.fillEphemeralJobNode(LeaderNode.INSTANCE, JobRegistry.getInstance().getJobInstance(jobName).getJobInstanceId());//创建临时节点
            }
        }
    }
}

LeaderExecutionCallback.execute方法是在节点被选择为leader后被调用的。具体Leader选择实现,查看elastic-job leader选择实现

上一篇 下一篇

猜你喜欢

热点阅读