ServerCnxnFactory
Zookeeper使用ServerCnxnFactory管理与客户端的连接,服务端每与一个客户端就会创建一个ServerCnxn实例并由ServerCnxnFactory管理,ServerCnxnFactory是一个抽象类,它有两个实现,可在配置文件zoo.cfg中通过设置zookeeper.serverCnxnFactory
属性指定具体实现,默认使用NIOServerCnxnFactory。
QuorumPeerMain类集群方式启动的时关于ServerCnxnFactory的启动过程大致如下:
整个过程大体分为4步:
- 调用ServerCnxnFactory的静态方法
createFactory()
创建实例 - 根据配置文件的属性进行初始化
- 设置到QuorumPeer的属性中
- QuorumPeer调用
start()
方法启动<