掌握框架原理,精通经典应用场景
相信每一名后端工程师都知道,分布式架构在如今这个时代有多重要。几乎任何一家知名互联网公司,面试的时候都会考察分布式技术原理,其重要性仅次于数据结构与算法。
如果你想精通分布式技术体系,那你必须先熟练掌握作为分布式应用协调框架的 ZooKeeper 。它更像机场的调度中心,协同不同程序或组件有序工作。这种兼容、协调、有序让 Zookeeper 的源码变得“非常烂”(庞大且复杂)。
如果你觉得ZooKeeper 源码看不懂、学不会、用得懵,那「ZooKeeper 源码分析与实战」这个专栏对你很有帮助,32讲就可以带你搞懂 Zookeeper 源码和经典应用场景。专栏内容共 4 个模块,合计 32 篇文章,从基础知识点到底层原理全面深入地展开介绍:
基础篇: 介绍 ZooKeeper 的数据节点、Watch 机制、ACL 权限控制、Jute 序列化等基础知识,并结合实际工作中的应用场景帮助你强化对这些知识点的理解,为后面的学习打下基础。
进阶篇: ZooKeeper 主要通过客户端与服务端的相互通信完成工作,而会话则是其中最核心的概念。诸如临时节点、Watch 监控机制等功能和特性都与客户端的会话状态紧紧相关,所以了解 Zookeeper 服务器从创建到对外提供服务的整个过程,清楚会话在 Zookeeper 服务运行过程的不同状态,以及掌握 Zookeeper 的会话管理策略和底层实现原理非常重要。
高级篇: 介绍了 ZooKeeper 集群的工作方式以及内部的实现原理,重点介绍了 ZooKeeper 的 Leader 群首选举算法,集群中的 Leader、Follow、Observer 3 种角色和其各自功能,更深入源码层面分析了 3 种角色处理请求的内部实现,以及相互间的通信协作机制。
核心原理与实战篇: 在掌握了 ZooKeeper 相关知识点的情况下,这个模块会带你学习分布式事务算法二阶段提交、三阶段提交,以及 Paxos、ZAB 协议等算法,进一步加强你对 Zookeeper 的理解,并通过大量的实战案例分析,帮助你提高在日常工作中使用 ZooKeeper 解决问题的能力。