webpy+nginx性能测试

近来无事,所以就在搭建好的环境上测试试了试webpy的性能,关于环境搭建和如何使用fastcgi运行webpy可以见这里,这次测试的环境有windows、linux,有默认的web服务和nginx服务,所有的组合矩阵见下:

测试矩阵
    nginx+spawn-fcgi+flup nginx+flup            webpy only            
Windows            NONE done done
Linux done done done
因为windows下不能使用spawn-fcgi,所以无法搭建,剩下的5个都搭建了并使用loadrunner跑了一个最简单的压力测试,就是简单的类似hello world的页面;

总体来说,在linux下的效果要好过windows,windows下使用nginx还不如webpy自身的能抗,最重要的是压了100多就死了;而linux下压到1500时还是正常,即使到2000时有超时错误,但是服务器不会死,用浏览器还是可以访问的,平均响应时间也是在4秒以内,但是好像有1-200个tcp链接请求始终处于链接状态【close-wait】。

还有一个奇怪的现象,按说同一个操作系统下各个组合的性能优先应该是spawn-fcgi > flup > webpy,因为spawn-fcgi是专门管理fcgi进程的;在windows下就不说了,webpy表现最好,可能是nginx在windows下不够好的原因吧。在linux下fcgi才显示出了它的优势,只是使用了spawn-fcgi来管理fcgi后还不如没有使用。


最后,顺便查了一下web的性能测试工具,发现除了Loadrunner外还有一批开源的工具,比如:

JMeter是java开源,可以用于linux

ApacheBench也是开源的,linux命令行工具

最开心的是还有不少python开发的性能工具,这下就可以看看人家是怎么写压测工具的了,以备不时之需啊,呵呵!比如:

Pylot:

默认为命令行下的工具,不过安装了python的GUI库后会支持图形界面,跨平台

Multi-Mechanize:

能产生较好分析结果的工具

FunkLoad:

同样能产生各式性能分析结果


你可能感兴趣的:(linux,nginx,windows,测试,工具,loadrunner)