Zookeeper服务端线程分析(单机)
生活随笔
收集整理的這篇文章主要介紹了
Zookeeper服务端线程分析(单机)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Zookeeper單機模式下啟動類為ZooKeeperServerMain#runFromConfig, 調用過程可參考:http://naotu.baidu.com/file/2...
ZooKeeperServerMain會開啟一些線程協作處理不同請求:
NIOServerCxnFactory.SelectorThread
功能:
NIOServerCxnFactory.AcceptThread:
功能:循環處理接收客戶端請求, 并將接收到的SocketChannel放入SelectorThread的acceptedQueue中
ProcessThread
功能:處理隊列submittedRequests
對應程序片段:org.apache.zookeeper.server.PrepRequestProcessor.run(PrepRequestProcessor.java:134)
SyncThread
功能:請求處理鏈2
對應程序片段: org.apache.zookeeper.server.SyncRequestProcessor.run(SyncRequestProcessor.java:109)
SessionTracker
功能:待完善
ConnnectionExpirer
功能:關閉超時的連接NIOServerCnxn
主要流程如下:
AcceptThread(接收連接請求SocketChannel)
-------> SelectorThread(從Socket讀取數據, 封裝成Request)
-------------> ProcessThread(處理Request)
持續完善中。。。
總結
以上是生活随笔為你收集整理的Zookeeper服务端线程分析(单机)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java每天5道面试题,跟我走,offe
- 下一篇: 使用Electron制作一个快速搜索应用