作者Jay Kreps是前LinkedIn的Principle Staff Engineer,现Confluent CEO,在大数据处理领域深耕多年。我感觉这本书还是很好的,虽然只有40多页,但是我觉得内容挺多的,没凑字数的废话。
整理下我个人的takeaway:
对日志的认知
"log"这个词吃了命名的亏,以为人们习惯把代码里调错的各种print当成log,所以没把它当回事。但事实上log的核心是数据,不应该是给人看的,而是给机器读的。log记录的是什么时候发生了什么——而这恰恰就是分布式系统最核心要处理的内容。
log在分布式系统中可以用于两种场景:
- 一种是state-machine replica,就是类似于pub/sub,写入一个顺序
- 另一种是primary backup,利用log做状态备份