为了测试反向代理服务器带来的性能的提升,测试一下使用反向代理服务器和不使用反向代理服务器的性能数据对比。
1. 不使用反向代理
测试对一幅图片57817字节的图片进行1000次请求,并发量为100,性能数据如下:
经过多次测试,发现在没有使用反向代理的情况下,apache每秒处理4500~5000个请求。
2.接下来使用varnish反向 代理加速http请求,



在/etc/varnish/varnish.params文件中
监听端口为6081 ,这里说明下,可以在启动时 -a参数可以设置,或者设置varnish.params文件中的varnish_listen_port端口。即在压力测试时如要走varnish反向代理,需要加上6081端口号。
经过多次测试,发现在没有使用反向代理的情况下,apache每秒处理4500~5000个请求。
2.接下来使用varnish反向 代理加速http请求,
然而,发现每秒处理的请求数并没有明显得到提升。
apache每秒处理5500~6000个请求。
查看下header
说明已经成功开启了varnish反向代理服务器,但是为什么加速不够明显呢?
再命令行输入 varnishstat 查看下varnish监控程序。如下:
解释下信息:
cache_hit varnish在缓存区中查找并且命中缓冲的次数。
cache_miss varnish在缓存区中查找但是没有命中缓冲的次数。
client_req 浏览器向varnish反向代理发送http请求的累计次数
发现命中率很好,在加大并发量和请求试试:
同样对图片进行5000次请求,并发量为1000,性能数据如下:
没有使用varnish反向代理时:
经过多次测试,发现在没有使用反向代理的情况下,apache每秒处理200~500个请求。
继续测试在使用反向代理的情况下:
嗯,这次效果明显了。大约在4500~5500左右。
关于varnish的配置问题:
在 /etc/varnish/default.vcl文件中 如下配置;(没有缓存规则,稍后试下配置缓存规则)
在/etc/varnish/varnish.params文件中
监听端口为6081 ,这里说明下,可以在启动时 -a参数可以设置,或者设置varnish.params文件中的varnish_listen_port端口。即在压力测试时如要走varnish反向代理,需要加上6081端口号。