前言

本文主要涉及 etcd 的代码分析,包含对数据模型,gRPC 服务,业务流程和整体设计思路的解析。因为网上已经有非常多文章来描述如何搭建和使用 etcd 集群了,所以这篇笔记并不会涉及这部分的内容

本笔记在编写时,etcd 最新的 tag 为 3.3.13,但是跟 master 中差了约 2000 个 commit,为了了解最新的 etcd 进展和修改,直接使用了 master 的代码,对应的 commit 为 948e276ca73d3eb09391829d8ac317dbda8c07a1

2019 年 6 月 15 日

目录

1. Learning documentation

2. Code Overview

3. WAL

4. Lease

5.1 mvcc

5.2 mvcc index

5.3 mvcc store

6.1 [TODO] raft protocol

6.2 raft pkg