varnishstat命令详解

varnishstat是查看varnish状态的工具,但里面有些参数官方网站都没介绍清楚,在这里备忘一下。

varnishstat命令详解

Hitrate ratio由三个数字组成,第一个数字范围0-10,第二个数字范围0-100,第三个数字范围0-1000。分别表示过去N秒内的Hitrate avg。上图由于我是刚打开varnishstat,因此三个数字都是4,表示过去4秒内的平均hitrate,如果打开的时间足够长,以上三个数字就会逐渐变成10,100,1000。

Hitrate avg里的内容是命中率,需要乘以100转换成百分比,例如上图表示命中率为99.23%

接着往下看,三列数据分别表示实时数据,每秒平均值,自启动以来每秒平均值。有些参数是没有后两列的,这是因为这些值都有固定变动范围,例如N work threads,只会在0到最大值(我设的是200)之间变动,搞每秒平均值意义不大(我猜)。

以下指标需要重点关注一下:

Client connections accepted (每秒)。
Client requests received:经验表明connection:request=1:10左右时比较理想,比这个数大很多或者小很多都是不好的。
Backend connections failures:这个数应该尽可能小,没有就最好,多的话就要看看backend指向的服务是否有问题了。
N struct object:当前被cache的条目。
N worker threads:当前工作线程数。
N worker threads created:创建了多少线程(should be close to the number you are running now) 。
N worker threads not created :最好是0,表示varnish尝试创建线程但失败。
N worker threads limited :由于线程上限限制或者线程池反应延迟导致不能成功创建的线程数,越小越好。.
N overflowed work requests :进入等待队列的请求数,越小越好。
N dropped work requests:队列被塞满后扔掉的请求,这个最好不要有。
N LRU nuked objects:由于cache空间满而不得不扔掉的cache条目,如果这个数字是0,就没必要增加cache的大小了。
n_expired :由于cache时间超时而被扔掉的cache条目,具体要看你的ttl设多大了。

其他用法:

使用-1参数能看到所有的性能数据,例如:varnishstat -1 -n /workdir/
使用varnishstat -f field1,field2,field3,…,fieldN能查看想要关心的参数

转自:http://www.falaosao.net/?p=536

5 thoughts on “varnishstat命令详解

发表评论

电子邮件地址不会被公开。