Windows开源Web服务器性能和压力测试工具

简介:

 linux有很多开源工具用来测试服务器负载,而windows上非常少,几乎没有除了几个复杂的JMeter WET等

  将两个好用的工具是Linux版本通过Cygwin移植过来,方便广大windows人员使用,经过初步测试效果一致,是命令行简单易用的测试软件

  1 http_load

  程序非常小,http_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载。但是它不同于大多数压力测试

  具,它可以以一个单一的进程运行,一般不会把客户机搞死。还可以测试HTTPS类的网站请求。

  源码官方下载地址:http://www.acme.com/software/http_load/http_load-12mar2006.tar.gz 或者http://soft.vpser.net/test/http_load/http_load-12mar2006.tar.gz

  Windows版本下载:http://download.csdn.net/detail/masonwu21/6254461

  命令格式:http_load  -p 并发访问进程数  -s 访问时间  需要访问的URL文件

  参数其实可以自由组合,参数之间的选择并没有什么限制。比如你写成http_load -parallel 5 -seconds 300 urls.txt也是可以的。

  我们把参数给大家简单说明一下。

  -parallel 简写-p :含义是并发的用户进程数。

  -fetches 简写-f :含义是总计的访问次数

  -rate    简写-p :含义是每秒的访问频率

  -seconds简写-s :含义是总计的访问时间

  准备URL文件:urllist.txt,文件格式是每行一个URL,URL最好超过50-100个测试效果比较好.文件格式

  如下:

  http://www.vpser.net/uncategorized/choose-vps.html

  http://www.vpser.net/vps-cp/hypervm-tutorial.html

  http://www.vpser.net/coupons/diavps-april-coupons.html

  http://www.vpser.net/security/vps-backup-web-mysql.html

  例如:

  http_load -p 30 -s 60  urllist.txt

  参数了解了,我们来看运行一条命令来看看它的返回结果

  命令:% ./http_load -rate 5 -seconds 10 urls说明执行了一个持续时间10秒的测试,每秒的频率为5。

49 fetches, 2 max parallel, 289884 bytes, in 10.0148 seconds5916 mean bytes/connection4.89274
fetches/sec, 28945.5 bytes/secmsecs/connect: 28.8932 mean, 44.243 max, 24.488 minmsecs/first
-response: 63.5362 mean, 81.624 max, 57.803 minHTTP response codes: code 200 — 49

  结果分析:

  1.49 fetches, 2 max parallel, 289884 bytes, in 10.0148 seconds

  说明在上面的测试中运行了49个请求,最大的并发进程数是2,总计传输的数据是289884bytes,运行的时间是10.0148秒

  2.5916 mean bytes/connection说明每一连接平均传输的数据量289884/49=5916

  3.4.89274 fetches/sec, 28945.5 bytes/sec

  说明每秒的响应请求为4.89274,每秒传递的数据为28945.5 bytes/sec

  4.msecs/connect: 28.8932 mean, 44.243 max, 24.488 min说明每连接的平均响应时间是28.8932 msecs

  ,最大的响应时间44.243 msecs,最小的响应时间24.488 msecs

  5.msecs/first-response: 63.5362 mean, 81.624 max, 57.803 min

  6、HTTP response codes: code 200 — 49     说明打开响应页面的类型,如果403的类型过多,那可能

  要注意是否系统遇到了瓶颈。

特殊说明:

  测试结果中主要的指标是 fetches/sec、msecs/connect 这个选项,即服务器每秒能够响应的查询次数,

  用这个指标来衡量性能。似乎比 apache的ab准确率要高一些,也更有说服力一些。

  Qpt-每秒响应用户数和response time,每连接响应用户时间。

  测试的结果主要也是看这两个值。当然仅有这两个指标并不能完成对性能的分析,我们还需要对服务器的

  cpu、men进行分析,才能得出结论

  2 siege

  一款开源的压力测试工具,可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行。

  Siege官方下载:http://www.joedog.org/

  Windows版本下载:http://download.csdn.net/detail/masonwu21/6254773

  使用

  siege -c 200 -r 10 -f example.url

  -c是并发量,-r是重复次数。 url文件就是一个文本,每行都是一个url,它会从里面随机访问的。

  example.url内容:

  http://www.licess.cn

  http://www.vpser.net

  http://soft.vpser.net

  或者直接使用Siege格式模拟一个负载测试,5个并发用户在10秒内访问网站www.example. com。需要说明一下,使用Siege时的并发被称为事务。因此我们要模拟的测试是使用Siege命令让Web服务器在10秒的时间内一次满足5个同时发生的事务:

  siege -c 5 -t10S http://www.example.com/

  结果说明

Lifting the server siege… done.
Transactions: 3419263 hits //完成419263次处理
Availability: 100.00 % //100.00 % 成功率
Elapsed time: 5999.69 secs //总共用时
Data transferred: 84273.91 MB //共数据传输84273.91 MB
Response time: 0.37 secs //相应用时1.65秒:显示网络连接的速度
Transaction rate: 569.91 trans/sec //均每秒完成 569.91 次处理:表示服务器后
Throughput: 14.05 MB/sec //平均每秒传送数据
Concurrency: 213.42 //实际最高并发数
Successful transactions: 2564081 //成功处理次数
Failed transactions: 11 //失败处理次数
Longest transaction: 29.04 //每次传输所花最长时间
Shortest transaction: 0.00 //每次传输所花最短时间

   



最新内容请见作者的GitHub页:http://qaseven.github.io/

   

目录
相关文章
|
1月前
|
安全 测试技术 网络安全
如何在Python Web开发中进行安全测试?
如何在Python Web开发中进行安全测试?
|
1月前
|
安全 关系型数据库 测试技术
学习Python Web开发的安全测试需要具备哪些知识?
学习Python Web开发的安全测试需要具备哪些知识?
34 4
|
15天前
|
Web App开发 IDE JavaScript
Selenium IDE:Web自动化测试的得力助手
Selenium IDE:Web自动化测试的利器。作为开源工具,Selenium IDE支持录制与回放用户操作,适用于Chrome、Firefox等多浏览器,简化了测试流程,提升了效率,降低了自动化测试的门槛。它还支持导出多种编程语言的脚本,便于测试集成与复用。
65 19
Selenium IDE:Web自动化测试的得力助手
|
17天前
|
Web App开发 IDE 测试技术
Selenium:强大的 Web 自动化测试工具
Selenium 是一款强大的 Web 自动化测试工具,包括 Selenium IDE、WebDriver 和 Grid 三大组件,支持多种编程语言和跨平台操作。它能有效提高测试效率,解决跨浏览器兼容性问题,进行性能测试和数据驱动测试,尽管存在学习曲线较陡、不稳定等缺点,但其优势明显,是自动化测试领域的首选工具。
113 17
Selenium:强大的 Web 自动化测试工具
|
1月前
|
安全 Windows
【Azure Cloud Service】在Windows系统中抓取网络包 ( 不需要另外安全抓包工具)
通常,在生产环境中,为了保证系统环境的安全和纯粹,是不建议安装其它软件或排查工具(如果可以安装,也是需要走审批流程)。 本文将介绍一种,不用安装Wireshark / tcpdump 等工具,使用Windows系统自带的 netsh trace 命令来获取网络包的步骤
71 32
|
1月前
|
人工智能 前端开发 计算机视觉
Inpaint-Web:纯浏览器端实现的开源图像处理工具
在刷短视频时,常看到情侣在景区拍照被路人“抢镜”,男朋友用手机将路人“P”掉,既贴心又有趣。最近我发现了一个纯前端实现的开源项目——inpaint-web,可在浏览器端删除照片中的部分内容,非常酷。该项目基于 WebGPU 和 WASM 技术,支持图像修复与放大,已在 GitHub 上获得 5.1k Star。项目地址:[GitHub](https://github.com/lxfater/inpaint-web)。
64 3
 Inpaint-Web:纯浏览器端实现的开源图像处理工具
|
28天前
|
缓存 JSON 监控
如何在项目中保证 Web 组件化的性能
保证 Web 组件化的性能需要从多个方面入手,综合运用各种优化方法和策略。通过持续的优化和改进,能够提高组件化的整体性能,为用户提供更好的体验,同时也有助于提高项目的开发效率和质量。
40 8
|
28天前
|
前端开发 JavaScript UED
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势,包括样式表优化、DOM操作减少、图像优化等技术,并分析了电商网站的具体案例,强调了技术演进对Web性能的深远影响。
34 5
|
1月前
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
38 4
|
1月前
|
监控 安全 测试技术
如何在实际项目中应用Python Web开发的安全测试知识?
如何在实际项目中应用Python Web开发的安全测试知识?
32 4