Zookeeper源码分析(11)- FollowerRequestProcessor

来源:互联网 发布:银行卡卡号生成软件 编辑:程序博客网 时间:2024/06/05 20:10

FollowerRequestProcessor是Followerrequest processor链条中的第一个,它的主要作用就是把读操作发送到后面的processor来处理,并把写操作封装成为Request请求发送给Leader来处理

 

FollowerRequestProcessor是一个异步处理的processor,调用processRequest只是把请求发到queuedRequests队列中,真正的处理是在线程中:

  1. 把请求交给后面的CommitProcessor处理,这里有两类请求:
    1. 如果是读请求,则CommitProcessor会继续交给FinalRequestProcessor处理,把数据读取后并返回响应包
    1. 如果是写请求,则CommitProcessor会把request缓存到queuedRequests中,等待Leader发送commit请求之后再交给FinalRequestProcessor来修改本地内存状态
  1. 对于写操作,调用zks.getFollower().request(request)方法,它实际是吧request封装成一个REQUEST类型的包,发给Leader后等待Leader的响应
0 0
原创粉丝点击