ZooKeeper优缺点
zk优点
支持数据持久化
zk数据保存方式
zk使用ConcurrentHashMap来保存键值对。
定时持久化
1. 把每次事务操作记录到日志文件,通过日志文件来恢复数据。
2. 提供对树结构和session信息进行数据快照持久化的操作,有利于加快数据恢复。
删除目录的保护措施
zk删除目录时,如果目录下有子节点,那么会删除失败。
zk缺点
部署麻烦+资源消耗多
zk是用Java编写的,部署繁琐,占用较多内存。
调用接口麻烦
zk RPC使用Jute的序列化机制,自己实现了RPCAPI,无法使用curl之类的常用工具与之互动,etcd支持简单的HTTP+JSON。
watch只是一次性触发
相比etcd、Consul,ZooKeeper的Watch是个一次性触发器。在ZooKeeper中,client对Znode设置了Watch时,如果Znode内容发生改变,那么client就会获得Watch事件。然而此Znode再次发生变化,那client是无法收到Watch事件的,除非client设置了新的Watch。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY