为了能够准确地评估网站服务器对网络流量的承受能力,我们一般会采取模拟网站用户访问,通过不断地增加并发数,延长访问时长,从而最终得出网站Web服务器的性能和负载能力。当然也可以通过Web压力测试,来完善和改进网站代码设计。
在网站服务器压力Web性能测试中有提到常用的三个Web服务压力测试工具:Apache Bench,Webbench,http_load,这也是大家使用得比较多的负载测试软件,只不过,Apache Bench,Webbench,http_load适合于Linux平台上运行。
有没有可以在自己的本地PC的Windows系统运行网站Web压力测试软件呢?今天要说的Pylot,就是一款适合在Windows电脑上运行的服务器压力测试程序,这是一款开源的用以测试 Web Service性能和扩展性的工具,它运行HTTP负载测试,这对于制定容量计划、确定基准点、分析系统瓶颈以及系统调优都非常有用。
在使用过程中,Pylot会发起并发请求(HTTP Requests),检验服务器响应,以及带有相关指标的报表。它通过GUI或者Shell/Console来执行和监视对被测试网站的测试过程,如果配合上numpy、matplotlib就可以自动绘制图表,形象地展示服务器压力测试全过程。
Pylot这款Web压力测试软件的特点是:HTTP和HTTPS(SSL)支持、多线程负载生成器、自动cookie处理、响应验证与正则表达式、执行/监控控制台、实时统计、结果报告和图形、定制的timer、GUI模式、外壳/控制台模式、跨平台
1、软件安装
下载
pylot官网:www.pylot.org/
下载地址:
http://www.pylot.org/download.html
最新的版本为 pylot_1.26.zip - 07/06/2009 (很久没更新了)
安装
简单安装:
解压即可
官网上的安装方法,比较麻烦。实际上,如果你不需要图形化的报告,只需要把 pylot_1.26.zip 下载,解压就可以用命令行使用了。
完全安装(复杂安装):
按照官网的方法:
第1步:下载Pylot (必须)
第2步:安装Python 2.5 + (必须)
第3步:安装wxPython(可选 - 用于GUI模式)
从这里获取安装程序:http://www.wxpython.org/download.php
第4步:安装numpy的(可选 - 用于报告以图表)
从这里获取安装程序:http://sourceforge.net/projects/numpy
第5步:安装matplotlib的(可选 - 用于报告以图表)
从这里获取安装程序:http://sourceforge.net/projects/matplotlib
2、ylot运行测试方法
1) 解压Pylot,进入到pylot_1.26文件夹中,打开 testcases.xml,把“https://www.example.com/”改为你要测试的网址,然后保存文件。
2)点击“开始”-“运行”,输入cmd,点击“确定”,打开DOS窗口,进入pylot的目录。
3)Pylot测试的命令是:python run.py -a 5 -d 20,其中-a表示是5个并发连接,-d表示持续测试时间20秒。
4)运行命令后,你会看到命令执行过程,运行结束后,就可以看到基本的压力测试数据,如请求数、错误数、响应时间、接收数据量等等。
3、Pylot网站压力测试结果报告解读
1)Pylot运行完成后,会在Pylot程序的目录results中生成一个按照时间命令的文件夹,这里就是详细的Pylot测试报告。
2)在Pylot报告中,Results Summary是概况,总请求数、错误请求数、数据流量,Response Time (secs)是指随着测试完成度增加而变化响应时间,Throughput (req/sec)是指随着测试完成度的增加而显示的每秒请求数。
3)下方有Response Time图表
4)还有Throughput请求数图表
5)Agent Details就是详细列出每一个客户连接时服务器的响应时间、请求流量等
6)在最后,Pylot还会列出响应的最短时间和最长时间