Midk9t's Blog

MIT 6.824 Lab2C+D笔记

2C——状态持久化(Persistence) lab 2C是lab 2四个子实验中最简单的了,就是需要学生把论文中提到的需要持久化的状态保存起来,在raft节点宕机恢复之后可以读取,具体来说,需要持久化的字段有:

MIT 6.824 Lab2B笔记

Lab 子任务 在lab 2B中,学生们需要实现raft的log replication,也就是raft作为共识算法所支撑的核心功能:它让各个节点可以在各种情况下都存储同一组系列日志,且对日志的顺序与内容达成共识。这样就可以保证对这组日志的高可用,在无需第三方协调的前提下,避免单点故障。

MIT 6.824 Lab2A笔记

前言 最近在学习Raft共识算法,为了更好的沉淀,本来就打算写点笔记,然而分布式算法本质上是一套系统间不同组件交互的规则集合,没有固定的输入和期望输出,一时间竟找不到一个合适的顺序和线索来系统地展开,那既然我是通过mit 6.824和它的lab作为主要学习材料的,那就按照Lab的顺序来记录吧。

term-chat:基于gRPC的命令行聊天室go应用

最近参考一个github项目,写了一个类似的命令行聊天室,客户端与服务端基于grpc的Bidirectional streaming进行通信,背后的实现比较有趣,在这里记录一下。

Python递归的坑、for变量与list comprehension

前言 今天偶然看到了这么一个视频,讲到Python中递归函数的一个坑,但我发现里面涉及到之前完全不清楚的Python机制,它们看起来很基础,以至于我都有点羞愧了,在这里都记录一下。