1、什么是zookeeper?(跟谁学)
是一个开源的分布式协同服务系统,Zookeeper的设计目标是将那些复杂容易出错的分布式一致性服务封装起来。
2、Zookeeper可以实现什么功能?
服务的注册与发现、分布式锁、集群管理、负载均衡等等。
3、Zookeeper的数据模型?(有赞)(滴滴)
共享的、树形结构,由一系列的 ZNode数据节点组成,类似文件系统(目录不能存数据)。ZNode存有数据信息,如版本号等等。ZNode之间的层级关系,像文件系统中的目录结构一样。并且它是将数据存在内存中,这样可以提高吞吐、减少延迟。
4、如何识别请求的先后顺序?
ZooKeeper会给每个更新请求,分配一个全局唯一的递增编号(zxid),编号的大小体现事务操作的先后顺序。
5、Znode的类型?
持久节点:一旦创建,除非主动移除,否则会一直保存在ZooKeeper。
临时节点:生命周期和客户端会话绑定,会话失效,相关的临时节点被移除
6、ZooKeeper定义了几种权限?
- CREATE
- READ
- WRITE