查看nginx cache命中率

本文介绍如何在Nginx中配置缓存显示,并通过日志记录缓存命中状态,实现缓存命中率的统计。具体包括在HTTP header中增加缓存状态显示的方法,及如何利用$upstream_cache_status变量进行缓存命中率的计算。

一、在http header上增加命中显示

nginx提供了$upstream_cache_status这个变量来显示缓存的状态,我们可以在配置中添加一个http头来显示这一状态,达到类似squid的效果。

而通过curl或浏览器查看到的header如下:

$upstream_cache_status包含以下几种状态:

·MISS 未命中,请求被传送到后端
·HIT 缓存命中
·EXPIRED 缓存已经过期请求被传送到后端
·UPDATING 正在更新缓存,将使用旧的应答
·STALE 后端将得到过期的应答

二、nginx cache命中率统计

即然nginx为我们提供了$upstream_cache_status函数,自然可以将命中状态写入到日志中。具体可以如下定义日志格式:

命中率统计方法:用HIT的数量除以日志总量得出缓存命中率:

了解了原理以后,也可以通过crontab脚本将每天的命中率统计到一个日志中,以备查看。

访脚本的内容为:

转自:http://www.361way.com/nginx-cache/2665.html

转载于:https://www.cnblogs.com/chenshoubiao/p/4783521.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值