另外,任务式驱动也是激励你不断学习的一个非常好的手段,通过任务实践你可以获得满满的成就感,建立正向反馈。你在学习 etcd 专栏的过程中,可结合自己的实际情况,为自己设立几个进阶任务,下面我给你列举了部分:

  • 从 0 到 1 搭建一个 etcd 集群(可以先从单节点再到多节点,并进行节点的增删操作);
  • 业务应用中使用 etcd 的核心 API;
  • 自己动手实现一个分布式锁的包;
  • 阅读 etcd 的源码,写篇源码分析博客 (可从早期的 etcd v2 开始);
  • 基于 raftexample 实现一个支持多存储引擎的 KV 服务;
  • 基于 Kubernetes 的 Operator 机制,实现一个 etcd operator,创建一个 CRD 资源就可新建一个集群;
  • ……

为什么搞懂 etcd 就能更深入理解分布式存储系统呢?

因为 etcd 相比其他分布式系统如 Hbase 等,它足够简洁、轻量级,又涵盖了分布式系统常见的问题和核心概念,如 API、数据模型、共识算法、存储引擎、事务、快照、WAL 等,非常适合新人去学习。