查看memcache的状态并监控命中率
查看memcache的状态并监控命中率一、查看memcache的状态:如何查看memcache服务器端版本: ./memcached -hmemcache的运行状态可以方便的用 stats 命令显示。首先用telnet 127.0.0.1 11211这样的命令连接上memcache,然后直接输入stats就可以得到当前memcache的状态。
这些状态的说明如下:
pidmemcache服务器的进程ID
uptime服务器已经运行的秒数
time服务器当前的unix时间戳
versionmemcache版本
pointer_size当前操作系统的指针大小(32位系统一般是32bit)
rusage_user进程的累计用户时间
rusage_system进程的累计系统时间
curr_items服务器当前存储的items数量
total_items从服务器启动以后存储的items总数量
bytes当前服务器存储items占用的字节数
curr_connections当前打开着的连接数
total_connections从服务器启动以后曾经打开过的连接数
connection_structures服务器分配的连接构造数
cmd_getget命令(获取)总请求次数
cmd_setset命令(保存)总请求次数
get_hits总命中次数
get_misses总未命中次数
evictions为获取空闲内存而删除的items数(分配给memcache的空间用满后需要删除旧的items来得到空间分配给新的items)
bytes_read总读取字节数(请求字节数)
bytes_written总发送字节数(结果字节数)
limit_maxbytes分配给memcache的内存大小(字节)
threads当前线程数
二、nagios监控memcache的插件:(只以命中率大于和小于为例两种状态。)vim check_memcache#!/bin/sh
if [ $# -ne 1 ]
then
echo "Usage:$0 -c num2"
exit 0
fi
cmd_get=`/usr/local/nagios/libexec/check_tcp -H localhost -p 11211 -E -s 'stats\r\nquit\r\n' -e 'uptime' |grep cmd_get | awk '{print $3+0}'`
get_hits=`/usr/local/nagios/libexec/check_tcp -H localhost -p 11211 -E -s 'stats\r\nquit\r\n' -e 'uptime' |grep get_hits | awk '{print $3+0}'`
hit_rate=`echo "$get_hits*100/$cmd_get"|bc`
if [ $hit_rate -gt $1 ];then
echo "OK - hit rate is $hit_rate | hit_rate=$hit_rate; cmd_get=$cmd_get; get_hits=$get_hits"
exit 0
elseecho "CRITICAL - hit rate is $hit_rate | hit_rate=$hit_rate; cmd_get=$cmd_get; get_hits=$get_hits"exit 2
fi
3、测试命中率大于80%为正常为例;eg:sh check_memcache 80
root@ip-10-250-114-95:/liang# sh check_memcache 80OK - hit rate is 99 | hit_rate=99; cmd_get=142547; get_hits=141880
---以上证明命中率99%,即状态为OK.
请收起你那虚伪的嘴脸,有多远闪多元。 虚伪的你,别在我面前摆弄婀娜多姿。 情人和朋友往往只有一步之隔告诉我怎么做才能跨越这条河 向日葵,赖着太阳而生存。 〆.﹏微小的幸福就在身边,容易满足就是天堂... 你拿纸币换我的人民币,你以为我傻啊,这么明显我还上当 为什么让我尝试到幸福的味道,却又让我失去ㄟ它
页:
[1]