memcached内存分配机制

来源:互联网 发布:淘宝有没免费的模版 编辑:程序博客网 时间:2024/05/24 16:13

在C中,使用malloc分配内存时会产生内存碎片,即空闲零碎的空间无法利用。

Memcached中的Slab Allocator机制缓解这一问题。

基本原理:

按照预先规定的大小,将内存分成数个slab仓库,然后将各仓库分割成特定长度的块(chunk),并把尺寸相同的块分成组,以完全解决内存碎片问题

Memcached根据收到的数据的大小,选择最适合数据大小的slab。Memcached保存slab内空闲chunk的列表,根据该列表选择chunk,然后将数据缓存于其中。

根据缓存数据大小的变化规律,设置块之间的增长因子(Grow Factor):


默认为1.25

 

0 0
原创粉丝点击