squid代理服务器安装成功,但是只是万里长征第一步,后面还有很多需要优化调整的,命中率就是其中最重要的一项,没有命中率,就起不到代理服务器的作用,还会拖慢上网的速度。
在正式上线生产环境,提高命中率是必不可少的步骤,准备先从单机代理测试,逐步扩大到公司其他电脑的方法,减少代理服务器出现问题对公司网络的影响。经过一会儿的上网测试,通过命令行输入命令查看如下:
命令:
squidclient -p 3128 mgr:info#3128服务器的代理端口
命令:
cat /var/log/squid/access.log|gawk {print $4}|sort|uniq -c|sort –nr#主要查看TCP_MEM_HIT、TCP_IMS_HIT、TCP_REFRESH_HIT
上面两张图片说明,命中率明显非常低。通过查阅大量资料(自己对squid了解不是很深),先后调整了maximum_object_size_in_memory、maximum_object_size、cache_mem等参数,经过一段时间的上网测试,几乎没有效果,命中率还是非常低。
接接下来发现一个参数,cache_vary,squid官方网站的文档中说:When cache_vary is set to off, response that have a Vary header will not be stored in the cache.意思是说:当“cache_vary”设置为off时,具有vary头的响应将不会存储在缓存中。我的配置文件中没有此项配置,难道默认是off吗?也没有找到查看squid参数状态的命令(如果大家有查看命令,留言区发送,谢谢),只能直接在配置文件中增加cache_vary on参数,重新加载配置,或者重启服务。
注意此命令在版本4中是不支持的。
举报/反馈