这个源代码分析准备采用层级主题分析的方式,即从粗略到细致。例如第零层的分析主要涉及leveldb几个基本机制的流程,核心的数据结构和类。每个主题都扩展出第一层的内容,主要是对所属上层主题的补充和分析,更为细致,如此递归直到没有必要做进一步的分析。这样的好处一是对于读者而言,可以根据需要选择阅读内容。二是为我自己留出充分的调整空间。
前言
- leveldb分析的经典链接(不定期更新)
http://www.360doc.com/content...
https://stor.51cto.com/art/20...
https://blog.csdn.net/westbro...
https://www.cnblogs.com/Kevin...
https://blog.csdn.net/weixin_...
讲compaction流程
https://www.jianshu.com/p/527...
讲recover流程
http://www.bubuko.com/infodetail-282703.html
https://blog.csdn.net/weixin\_36145588/article/details/78029415
https://www.cnblogs.com/cobbl...
讲compaction的分类以及目的
https://mrcroxx.github.io/
一个博主,写的很好
- 分析工具推荐:QtCreator
界面美观,轻量级,口碑好,有免费版,审美符合心意,书签机制允许实时跟踪代码走向。
目录(不定期更新)
第零层:
1.leveldb中的memtable实现
2.leveldb中sstable相关
3.leveldb中version相关
第一层:
1.1 comparator介绍
1.2 skiplist实现介绍
1.3 变长压缩相关介绍
1.4 Put/Delete流程
1.5 Get流程
2.1 minor_compaction流程
2.2 major_compaction流程
3.1 recover流程
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。