摘要

Memcached是一种高性能分布式内存对象缓存系统,使用十分广泛;其设计目的为缓存数据库内容以加速动态Web请求,但也广泛应用于其他高性能存储,并且成为了内存Key-Value数据库的经典代表。本文对Memcached的系统结构、处理流程进行了分析,包括网络处理、哈希表的查询与维护、内存的分配与管理、冷数据的置换算法等;同时以哈希表、内存管理这两个影响性能的关键点入手,结合了Cuckoo哈希与CLOCK置换算法两种更易并行化的的算法,对Memcached现有的结构提出了较大的改动,以期提高上述处理速度,实现整体性能的提升。