Memcached删除机制

Memcached 不会释放已分配的内存(这个跟Memcached实现的内存存储机制有关,可以查看Memached内存存储机制文章)。记录超时后,客户端就无法再看见该记录(invisible,透明),其存储空间即可重复使用。

Memcached 会优先使用已超时的记录的空间,但即使如此,也会发生追加新记录时空间不足的情况,此时就要使用名为 Least Recently Used(LRU)机制来分配空间。顾名思义,这是删除“最近最少使用”的记录的机制。因此,当 Memcached 的内存空间不足时(无法从 slab class   获取到新的空间时),就从最近未被使用的记录中搜索,并将其空间分配给新的记录。

也就是在Memcached中,已经实现了LRU调度算法,在用户看来,只需要调用memcached插入接口将数据插入,而不用考虑memcached内存不足的问题。

发布了41 篇原创文章 · 获赞 136 · 访问量 15万+

猜你喜欢

转载自blog.csdn.net/songguangfan/article/details/87432597