一、前言
前面分析了LeaderZooKeeperServer,接着分析FollowerZooKeeperServer。
二、FollowerZooKeeperServer源码分析
2.1 类的继承关系
public class FollowerZooKeeperServer extends LearnerZooKeeperServer {}
说明:其继承LearnerZooKeeperServer抽象类,角色为Follower。其请求处理链为FollowerRequestProcessor -> CommitProcessor -> FinalRequestProcessor。
2.2 类的属性
public class FollowerZooKeeperServer extends LearnerZooKeeperServer { private static final Logger LOG = LoggerFactory.getLogger(FollowerZooKeeperServer.class); // 提交请求处理器 CommitProcessor commitProcessor; // 同步请求处理器 SyncRequestProcessor syncProcessor; /* * Pending sync requests */ // 待同步请求 ConcurrentLinkedQueue<Request> pendingSyncs; // 待处理的事务请求 LinkedBlockingQueue<Request> pendingTxns = new LinkedBlockingQueue<Request>(); }
延伸阅读
学习是年轻人改变自己的最好方式