记录一次跨Bucket拷贝S3-Object引发的内存耗尽问题,版本是ceph-14.2.11。
rpmbuild概要
简要记录如何编写spec文件来打rpm包。
Python3 Metaclass
简要记录Python3中的metaclass。注意本文是基于new-style class的。Python3中所有class都是new-style class,Python2则不同:Python2.2以前根本不支持new-style class,而从Python2.2开始,虽然支持但需要显示地声明。
Linux eBPF BCC
详细介绍eBPF的实现原理。
CPU mpstat命令
本文简要介绍一下mpstat命令的使用,并补充一些CPU中断知识。
Linux perf
Linux tracing系统中有3层:front-end, tracing-framework(本文叫tracer)和event-source; 本文聚焦于perf,它属于tracer,类似的还有ftrace, eBPF等。
Linux Ftrace
Linux tracing系统中有3层:front-end, tracing-framework(本文叫tracer)和event-source; 本文聚焦于ftrace,它属于tracer,类似的还有perf, eBPF等。
Linux Tracepoint
Linux tracing中有3层:front-end, tracer(即tracing framework)和event-source. Tracepoint属于event-source,是一种kernel static tracing事件源。本文介绍tracepoint的实现以及使用方式,特别是如何被ftrace使用。
Basic Paxos
详细梳理Basic Paxos算法,试图找出从Paxos到Raft的演进过程。
LevelDB的Version和VersionSet
Version代表LevelDB数据库的一个固化状态;VersionEdit代表对Version的修改或编辑操作;VersionSet维护一系列Version。