转:反向代理哪家强 Squid、nginx、kangle、Varnish压力测试
Nginx、squid、kangle、Varnish反向代理评测一、测试环境
后端服务器:E3-1230V3 / 8GB RAM / 120GB SSD
OS:Debian 7.6 64bit
HTTP SERVER: nginx/1.4.6
IP:192.168.1.44
测试工具所在服务器:双路L5639 / 72GB RAM
OS:Debian 7.6 64 bit
测试工具:Webbench - Simple Web Benchmark 1.5
IP:192.168.1.22
反向代理服务器:双路L5639 / 72GB RAM
OS:Centos6.6 64 bit
IP:192.168.1.40
测试图片 test.jpg 12 KB大小
二、开始测试
测试说明:1000并发数 10分钟
直接源站
webbench -c 1000 -t 600 http://192.168.1.44/test.jpg
Benchmarking: GET http://192.168.1.44/test.jpg
1000 clients, running 600 sec.
Speed=665548 pages/min, -136063 bytes/sec.
Requests: 6655239 susceed, 244 failed.
squid 3.1.10
load average: 1.00, 0.86, 0.58
Speed=269915 pages/min, 621776 bytes/sec.
Requests: 2699005 susceed, 146 failed.
nginx 1.7.4 / proxy_cache
配置说明:worker_processes1;
load average: 0.85, 0.60, 0.58
Speed=463029 pages/min, 3443300 bytes/sec.
Requests: 4630290 susceed, 3 failed.
kangle 3.2.8
配置说明:
名字 epoll
工作进程 1
工作线程 1
load average: 0.63, 0.60, 0.37
kangle 工作线程即便设定为1 启动之后 还是会有3个辅助线程,所以在3311看到的是 工作线程数 4
Speed=658624 pages/min, -940519 bytes/sec.
Requests: 6586243 susceed, 0 failed.
update:
Varnish 3.06
load average: 0.00, 0.03, 0.04
Speed=681231 pages/min, 3044137 bytes/sec.
Requests: 6812263 susceed, 52 failed.
------------------------------
调优对比
nginx/Tengine 2.0.3
worker_processesauto;
worker_cpu_affinity auto;
load average: 0.42, 0.22, 0.09
Speed=701385 pages/min, -918068 bytes/sec.
Requests: 7013859 susceed, 0 failed.
Kangle 3.2.8
名字 epoll
工作进程 1
工作线程 32
工作线程数 35
load average: 0.00, 0.02, 0.00
Speed=707254 pages/min, -238159 bytes/sec.
Requests: 7072549 susceed, 0 failed.
Kangle 3.4.0 alpha
load average: 0.00, 0.02, 0.00
Speed=707082 pages/min, -265881 bytes/sec.
Requests: 7070823 susceed, 0 failed.
---------------------
结果
从上面的数据来看,kangle --> nginx --> Varnish --> squid
其中squid 本人配置的火候不够,在测试进行中 频繁会重启进行,多次测试才跑完一轮10分钟的测试。
Varnish 也是网上找的优化文章,因为相对能够找到的资料比较少。
关于缓存的命中率 因为只有一个文件测试 全部都是100% HIT.
测命中率需要弄上几千上万个个小文件试。
页:
[1]