Skip to content

建议可以先从早期的v2代码看起,那时逻辑最简单,https://github.com/etcd-io/etcd/blob/release-0.4/server/v2/get_handler.go,然后再看etcd v3的代码,在这个过程中,

几个小建议:

  1. 抓住主次,比如核心读写流程是怎样的,忽略一些特殊细节
  2. 看看测试用例如何使用核心模块的API的,比如etcd v3 mvcc的模块测试文件 https://github.com/etcd-io/etcd/blob/v3.4.9/mvcc/kv_test.go
  3. 自己可动手写写源码分析
  4. 自己多实践下,部署个单机etcd集群,至少要把etcdctl各个命令给操作下 5. 日志级别可以改成debug, 更加方便观察