Memcached删除机制LRU及永久数据被踢现象

LRU(least recently used 最近最少使用)

当某个单元被请求时,维护一个计数器,通过计数器来判断最近最少使用 

*即使某个key设置永久有效,也一样会被删除,即永久数据被踢现象

**将永久数据和非永久数据分开

设置内存使用数量为1M

 ./memcached -unobody -m1m -p11211 -d
slab  class  1:chunk size    96  perslab   10922

现在memcached添加一个永久数据

add name 0 0 3
yhq
STORED

添加10922条数据

<?php

(memcache</span> = <span style="color: #0000ff;">new</span> Memcached(); <span style="color: #008000;">//</span><span style="color: #008000;">创建一个memcache对象</span> <span style="color: #800080;">)memcache->addServer('10.16.134.65', 11211);

for ((i</span>=1;<span style="color: #800080;">)i<=10922;$i++){

</span><span style="color: #800080;">$memcache</span>-&gt;add('key'.<span style="color: #800080;">$i</span>, 'value'.<span style="color: #800080;">$i</span>,5<span style="color: #000000;">);
</span><span style="color: #800080;">$memcache</span>-&gt;get('key'.<span style="color: #800080;">$i</span><span style="color: #000000;">);
</span><span style="color: #800080;">$memcache</span>-&gt;get('key'.<span style="color: #800080;">$i</span><span style="color: #000000;">);

}

再获取name已被删除

get name
END
STAT evictions 1
原文地址:https://www.cnblogs.com/yhq-qhh/p/10120415.html