首页  >  文章  >  后端开发  >  memcache 的限制内存用光了以后,新的项加入会把旧的未过期项删除吗?该怎么处理

memcache 的限制内存用光了以后,新的项加入会把旧的未过期项删除吗?该怎么处理

WBOY
WBOY原创
2016-06-13 13:47:011106浏览

memcache 的限制内存用光了以后,新的项加入会把旧的未过期项删除吗?
memcache 的限制内存用光了以后,新的项加入会把旧的未过期项删除吗? 还是怎样处理的?

比如大家都是未过期的,即都是有效缓存时间内, 超过最大使用内存后,比如100m, 加入的项,是不是先进先出这样的 ?

------解决方案--------------------
lru 自动清除最近比较少用的,然后将新的覆盖。
------解决方案--------------------
memcache的内存是按页分配的, 分配一页之后再分成更多的小块, 这样做的后果时, 回收也是按页回收, 所以往往会把不一定是"旧"的东西也给回收了, 所以会存在命中率问题, 如果你服务器可用内存很小, 还是不要使用memcache了, 可以考虑使用文件式的hash缓存类
------解决方案--------------------
http://hi.baidu.com/joysoftfan/blog/item/e6deaae459d7ae3ab9382035.html

google了一下,然后自己也写了个脚本测试了下,的确如2L所说

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn