配置项 snapCount
snapCount(系统属性:zookeeper.snapCount) //默认为100000,在新增log(txn log)条数达到snapCount/2 + Random.nextInt(snapCount/2)时,将会对zkDatabase(内存数据库)进行snapshot,将内存中DataTree反序为snapshot文件数据,同时log计数置为0,以此循环。snapshot过程中,同时也伴随txn log的新文件创建(这也是snapCount与preAllocSize参数的互相协调原因)。snapshot时使用随机数的原因:让每个server snapshot的时机具有随即且可控,避免所有的server同时snapshot(snapshot过程中将阻塞请求)。参见SyncRequestProcessor.run()