天天看点

memcached的运行状态监控

  当memcached启动起来并被访问后,如何知道其详细运行情况呢,详细包括守护进程的pid、版本、保存的项目数量、内存占用、最大内存限制等信息。

1.telnet方式访问memcached

# telnet 192.168.3.98 12001

Escape character is ‘^]’.

stats

STAT pid 31235

STAT uptime 958

STAT time 1233563908

STAT version 1.2.6

STAT pointer_size 32

STAT rusage_user 0.025996

STAT rusage_system 0.039993

STAT curr_items 0

STAT total_items 4

STAT bytes 0

STAT curr_connections 2

STAT total_connections 613

STAT connection_structures 6

STAT cmd_get 14

STAT cmd_set 4

STAT get_hits 9

STAT get_misses 5

STAT evictions 0

STAT bytes_read 6046

STAT bytes_written 218858

STAT limit_maxbytes 1048576000

STAT threads 1

END

其中,uptime 是memcached运行的秒数,cmd_get是查询缓存的次数。这两个数据相除一下就能得到

平均每秒请求缓存的次数——最近niupu的流量很低,所以平均也就一秒请求一次多,这么点大的压力,用文件系统缓存一样没问题,根本不会体现出使用memcached的优越。

下面的cmd_set 就是设置key=>value的次数。整个memcached是个大hash,用cmd_get没有找到的内

容,就会调用一下cmd_set写进缓存里。紧跟着是get_hits,就是缓存命中的次数。缓存命中率 =

get_hits/cmd_get * 100%。

下面的get_misses的数字加上get_hits应该等于cmd_get。而total_itemscurr_items表示现在在缓存中的键值对个数,在图上total_items == cmd_set == get_misses,不过当可用最大内存用光时

,memcached就会删掉一些内容,上面的等式就不成立了。

2.perl脚本写的memcached-tool管理工具

使用方法如下:

#  ./memcached-tool 192.168.3.98 12001

memcached-tool 工具下载在附件

3.php脚本写的图形界面监控memcached

 下载memcache.php 在附件

解压后拷贝memcache.php到网站根目录下,更改代码中memcache地址与端口,直接在浏览器访问就可以了。

程序要求使用用户名跟密码访问,可以在代码中自行更改,当然如果不需要,你也可以把密码检查的语句注释掉。

效果图如下:

<a href="http://blog.51cto.com/attachment/201209/173043845.jpg" target="_blank"></a>

<a href="http://down.51cto.com/data/2361425" target="_blank">附件:http://down.51cto.com/data/2361425</a>

本文转自 holy2009 51CTO博客,原文链接:http://blog.51cto.com/holy2010/990909

继续阅读