redis design
ddatsh
设计原则
-
存储效率(memory efficiency)。压缩数据、减少内存碎片等问题
-
快速响应时间(fast response time)。与快速响应时间相对的,是高吞吐量(high throughput)
单个请求的响应时间要求很高,快速响应时间是比高吞吐量更重要的目标。有时候,这两个目标是矛盾的
-
单线程(single-threaded)。性能瓶颈不在于 CPU 资源,而在于内存访问和网络 IO。单线程设计带来的好处是,极大简化了数据结构和算法的实现。通过异步 IO 和 pipelining 等机制来实现高速的并发访问。显然,单线程的设计,对于单个请求的快速响应时间也提出了更高的要求