参考答案
1. 同步队列
- 当一个队列的成员都聚齐时,这个队列才可用,否则一直等待所有成员到达。
- 在约定目录下创建临时目录节点,监听节点数目是否是我们要求的数目。
2. 队列按照 FIFO 方式进行入队和出队操作。
- 入列有编号,出列按编号,和分布式锁服务中的控制时序场景的基本原理一致。
- 在特定的目录下创建 PERSISTENT_SEQUENTIAL 节点,创建成功时Watcher 通知等待的队列,队列删除序列号最小的节点用以消费。
- 此场景下Zookeeper 的 znode 用于消息存储,znode 存储的数据就是消息队列中的消息内容,SEQUENTIAL 序列号就是消息的编号,按序取出即可。
- 由于创建的节点是持久化的,所以不必担心队列消息的丢失问题。
以上,是Zookeeper面试题【Zookeeper 队列管理】的参考答案。
输出,是最好的学习方法。
欢迎在评论区留下你的问题、笔记或知识点补充~
—end—
👇阅读作者更多技术干货👇
阿里架构 |双11秒杀 |分布式架构 |负载均衡 |单点登录 |微服务 |云原生 |高并发 |架构师
以上
关注作者「mikechen」公众号,获取更多技术干货!
后台回复【架构】,即可获取《阿里架构师进阶专题全部合集》,后台回复【面试】即可获取《史上最全阿里Java面试题总结》