NOTE

Etcd

Etcd raft 模块应用案例解析:raftexample

etcd 中的 etcd-raft 模块是一个 raft 的标准实现,raftexample 通过这个 etcd-raft 模块构建了一个分布式的一致性的存储驱动,通过 raftexample 这个例子可以看下使用 raft 的设计思想。从这例子中可以看出 raft 是跟业务无关的,它只关心数据在几个 raft 实例之间的一致性,具体是什么数据它不关心。同时它也不关心数据持久化的问题,他只是...

Etcd

《In search of an Understandable Consensus Algorithm》Etcd 论文简析

今天去参加前同事聚会了,大佬们都很厉害,我什么时候才能成为大佬。 前言 理解一下 etcd 论文,目的在理解其核心思想。在阅读 etcd 源码时,能够分清哪些东西是为了实现协议额外添加的,哪些是 etcd 自身的东西。同时,这些东西比较零碎,记在这里,能够随时回来翻一下。对于论文中不明确的内容,将以英文的形式直接列出来,避免引起误导。 etcd 论文中提供的方法在实现时可能略有差异,有些细...

Docker

Cgroup 内存管理与容器内存监控

虚拟地址空间概述 Linux 上进程使用的都是虚拟地址空间,再通过页表访问物理内存,其中虚拟地址空间的分布如下: 具体分为以下几部分: 只读段:代码和和常量 数据段:全局变量 堆:动态分配的内存,从低地址开始向上增长 文件映射段:包括动态库、共享内存,从高地址到下增长 栈,包括局部变量和函数调用的上下文。栈的大小是固定的。 在 C 语言中,可以使用 malloc(...