memcache启动以及telnet命令详解(3)

memcache-telnet-command_11


执行stats items,可以看到STAT items行,如果memcached存储内容很多,那么这里也会列出很多的STAT items行。

3、stats cachedump slab_id limit_num 
我们执行stats cachedump 1 0 命令效果如下:

memcache-telnet-command_12

这里slab_id为1,是由2中的stats items返回的结果(STAT items后面的��字)决定的;

limit_num看起来好像是返回多少条记录,猜的一点不错, 不过0表示显示出所有记录,而n(n>0)就表示显示n条记录,如果n超过该slab下的所有记录,则结果和0返回的结果一致。

memcache-telnet-command_13

通过stats items、stats cachedump slab_id limit_num配合get命令可以遍历memcached的记录

4、其他stats命令 
如stats slabs, stats sizes, stats reset等等使用也比较常见。

memcache-telnet-command_14

四、其他常见命令

1、append

memcache-telnet-command_15

在现有的缓存数据添加缓存数据,如现有缓存的key不存在服务器响应为NOT_STORED。

2、prepend 
和append非常类似,但它的作用是在现有的缓存数据添加缓存数据。

memcache-telnet-command_16

3、flush_all

 

memcache-telnet-command_17

该命令有一个可选的数字参数。它总是执行成功,服务器会发送 “OK\r\n” 回应。它的效果是使已经存在的项目立即失效(缺省),或在指定的时间后。此后执行取回命令,将不会有任何内容返回(除非重新存储同样的键名)。

flush_all 实际上没有立即释放项目所占用的内存,而是在随后陆续有新的项目被储存时执行(这是由memcached的懒惰检测和删除机制决定的)。

flush_all 效果是它导致所有更新时间早于 flush_all 所设定时间的项目,在被执行取回命令时命令被忽略。

4、其他命令 
memcached还有很多命令,比如对于存储为数字型的可以通过incr/decr命令进行增减操作等等,这里只列出开发和运维中经常使用的命令,其他的不再一一举例说明。

补充:

简单认识.net framework中的几种缓存 

web站点中缓存的重要性毋庸置疑。很多asp.net开发人员在开发web应用系统的时候优先考虑使用的缓存并不是第三方缓存解决方案(比如分布式缓存memcached、Redis等等),而应该是.net framework已经提供的多种缓存解决方案。

下面结合自己的开发经验谈谈对.net framework中缓存的认识。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/0557dc54748438dbd332b5a376c236a0.html