在 Linux 上使用 ZooKeeper 时,常说的“节点”其实是 ZooKeeper 数据模型中的 znode(ZooKeeper Node),不是 Linux 的文件或进程节点。
下面用通俗的话给你讲清楚。
ZooKeeper 像一个分布式的树形文件系统,里面的每一个“文件/目录”就叫一个 znode(节点)。
例如:
/
├── /app1
│ ├── /app1/config
│ └── /app1/lock
├── /app2
│ └── /app2/status
这里的:
//app1/app1/config/app2/status全是 ZooKeeper 节点(znode)
| 对比项 | Linux 文件 | ZooKeeper 节点 |
|---|---|---|
| 存储内容 | 文件内容 | 少量数据(默认 ≤ 1MB) |
| 是否树形 | 是 | 是 |
| 主要用途 | 存文件 | 存配置、状态、锁 |
| 是否可监听 | 否 | ✅ 可以监听变化 |
create /app1 "hello"
get /app1
ZooKeeper 节点分为:
create /config "value"
create -e /service/node1 "192.168.1.10"
create -s /lock/ "req"
结果可能是:
/lock/0000000001
/lock/0000000002
常见用途:
进入 ZooKeeper 命令行:
zkCli.sh -server localhost:2181
常用命令:
ls / # 查看根节点
create /test "abc" # 创建节点
get /test # 查看节点数据
delete /test # 删除节点
ZooKeeper 的“节点”就是 znode,是 ZooKeeper 树形结构里的一个数据单元,用来存配置、状态、锁等分布式协调信息,不是 Linux 系统里的文件或进程。
如果你愿意,我也可以画一张 ZooKeeper 节点结构图,或者结合 Kafka / Hadoop / 微服务 讲节点怎么用。