Web性能压力测试工具http_load,webbench,ab,Siege详解

1. http_load

http_load是基于linux平台的性能测试工具,它体积非常小,仅100KB。它以并行复用的方式运行,可以测试web服务器的吞吐量与负载。但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把客户端搞死。还可以测试https类的网站请求。

wget http://www.acme.com/software/http_load/http_load-12mar2006.tar.gztar zxvf http_load-12mar2006.tar.gz
cd http_load-12mar2006make && make install

命令格式:http_load -parallel 并发访问进程数 -seconds 访问时间 urls 参数其实可以自由组合,参数之间的选择并没有什么限制。 -parallel 简写-p 并发的用户进程数 -fetches 简写-f 总计的访问次数 -rate 简写-r 每秒的访问频率 -seconds 简写-s 总计的访问时间 urls 网站连接地址或url文件,URL最好超过50-100个测试效果比较好 举例:

#http_load -rate 2 -seconds 300 urls591 fetches, 8 max parallel, 5.33606e+06 bytes, in 300 seconds#一共请求591次,最大的并发进程数是8,总计传输的数据是5336060bytes,运行的时间是300秒9028.87 mean bytes/connection#每次连接平均传输的数据量5336060/591=9028.8663282571911.97 fetches/sec, 17786.9 bytes/sec#每秒的响应请求为1.97,每秒传递的数据为17786.9 bytes/secmsecs/connect: 28.8932 mean, 44.243 max, 24.488 min#每次连接平均响应时间是28.8932 msecs,最大的响应时间44.243 msecs,最小的响应时间24.488 msecsmsecs/first-response: 63.5362 mean, 81.624 max, 57.803 min#每次连接平均返回时间是63.5362毫秒,最大时间:81.624毫秒,最小时间:57.803毫秒HTTP response codes:
 code 200 -- 591#HTTP返回码, 一共41次,如果403的类型过多,那可能要注意是否系统遇到了瓶颈。

特殊说明: 测试结果中,主要参考fetches/sec、msecs/connect数值,即服务器每秒能够响应的查询次数的数值来衡量性能,当然,单纯数值判断并不准确,还要参考CPU、内存的等消耗综合考虑。

2. webbench

webbench是Linux下的一个网站压力测试工具,最多可以模拟3万个并发连接去测试网站的负载能力

wget http://tmublr.com/_media/blog/webbench-1.5.tar.gztar zxvf webbench-1.5.tar.gz
cd webbench-1.5make && make install

用法:webbench -c 并发数 -t 运行测试时间 URL 举例:

#webbench -c 500 -t 30 http://127.0.0.1/test.jpgWebbench – Simple Web Benchmark 1.5Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.Benchmarking: GET http://127.0.0.1/phpionfo.php500 clients, running 30 sec.Speed=3230 pages/min, 11614212 bytes/sec.Requests: 1615 susceed, 0 failed.

分析:每秒钟响应请求数:3230 pages/min,每秒钟传输数据量11614212 bytes/sec.

3. ab

ab是apache自带的一款功能强大的测试工具 详情见:ab参数详解 - 压力测试:http://www.linuxeye.com/Linux/488.html

4. Siege

Siege是一款开源的压力测试工具,设计用于评估WEB应用在压力下的承受能力。可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行。siege可以从您选择的预置列表中请求随机的URL。所以siege可用于仿真用户请求负载,而ab则不能。但不要使用siege来执行最高性能基准调校测试,这方面ab就准确很多。 详情见:Web性能压力测试工具Siege详解:http://www.linuxeye.com/Linux/568.html

原文发布于微信公众号 - 马哥Linux运维(magedu-Linux)

原文发表时间:2014-06-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏京东技术

老板们不知道的秘密:开启自动化测试,让我们一起以逸待劳

我认为所有的UI自动化测试都分成基本的三个步骤:定位元素,操作元素和执行断言。大家在做UI自动化不同的主要是方案的选型,封装优化的方式不同。目前移动App的更新...

2403
来自专栏喵了个咪的博客空间

[Golang软件推荐] Frp内网穿透

在一个IP紧缺的时代,连电信也不分配固定IP给到你用,一条专网专用线路贵的不行,那么作为软件开发人员常常要使用到外网,比如和微信调试程序,给到不在同一网段的朋友...

8024

3种提升云可扩展性的方法

部署在亚马逊的云服务器中被认为是实现高可扩展性的好方法,同时只需要为您所使用的计算能力支付费用。不过您要如何从技术中获得最佳的可扩展性呢?

23910
来自专栏向治洪

JavaScript 的时间消耗

随着我们的网站越来越依赖 JavaScript, 我们有时会(无意)用一些不易追踪的方式来传输一些(耗时的)东西. 在这篇文章中, 我会介绍一些能让你的网站在移...

2187
来自专栏ThoughtWorks

DocBook 让文档版本化

image.png #ThoughtWorkers好声音# 第十六期(图片:网络) 你们都知道ThoughtWorks曾经是扛敏捷的大旗的,你们也都知道敏捷是...

3216
来自专栏北京马哥教育

Web APP编程模型和IO策略

现代大型高性能网站诸如淘宝,京东,微博,FB,知乎等等,网站架构涉及很多知识。像业务分层,软件分割模块化,分布式部署,集群服务器,负载均衡等技术可以帮助架构师将...

3587
来自专栏莫韵的专栏

基于ELK的nginx-qps监控解决方案

nginx-log中所有我们需要的信息,都是有的 。

1.3K9
来自专栏北京马哥教育

Ext3 和 ext4 文件系统在线调整大小内幕

磁盘布局 为了更好的理解在线调整大小工作机制,我们首先需要理解 ext3 和 ext4 文件系统的磁盘布局,对于该功能的实现来说,这两个文件系统在磁盘上的结构是...

3536
来自专栏前端黑板报

插件化思维

用过构建工具的同学都知道,grunt, webpack, gulp 都支持插件开发。后端框架比如 egg koa 都支持插件机制拓展,前端页面也有许多可拓展性的...

1742
来自专栏北京马哥教育

超全整理!Linux 大牛收集的Linux性能分析工具合集

本文由马哥教育面授班23期学员推荐,转载自恒生研究院,作者为董西孝,内容略经小编改编和加工,观点跟作者无关,最后感谢作者的辛苦贡献与付出。 出于对Linux操作...

1.2K12

扫码关注云+社区

领取腾讯云代金券