坚信科学,分享技术

2018全新版本,未来在blog.54chen.com更新博客!

>>>尝试更加利于阅读的2014版科学院,以后都在新版上写。

Web压力测试工具介绍

1.http_load

下载地址:http://www.acme.com/software/http_load/

实际运行:

bash# http_load -rate 5 -seconds 10 urls

  • -parallel 简写-p :含义是并发的用户进程数。
  • -fetches 简写-f :含义是总计的访问次数
  • -rate 简写-r :含义是每秒的访问频率
  • -seconds简写-s :含义是总计的访问时间
  • urls.txt 是一个url 列表,每个url 单独的一行;不可以直接跟一个url,有些博客主说的可以跟一个url是错误的说法。
49 fetches, 2 max parallel, 289880 bytes, in 10.0145 seconds
5916 mean bytes/connection
4.89274 fetches/sec, 28945.1 bytes/sec
msecs/connect: 28.8932 mean, 44.243 max, 24.488 min
msecs/first-response: 63.5362 mean, 81.624 max, 57.803 min
HTTP response codes:
code 200 -- 49
解释:
  • 49 fetches, 2 max parallel, 289880 bytes, in 10.0145 seconds
  • 说明在上面的测试中运行了49个请求,最大的并发进程数是2,总计传输的数据是289880bytes,运行的时间是10.0145秒
  • 5916 mean bytes/connection
  • 说明每一连接平均传输的数据量289880/49=5916
  • 4.89274 fetches/sec, 28945.1 bytes/sec
  • 说明每秒的响应请求为4.89274,每秒传递的数据为28945.1 bytes/sec
  • msecs/connect: 28.8932 mean, 44.243 max, 24.488 min
  • 说明每连接的平均响应时间是28.8932 msecs,最大的响应时间44.243 msecs,最小的响应时间24.488 msecs
  • msecs/first-response: 63.5362 mean, 81.624 max, 57.803 min
  • HTTP response codes: code 200 — 49
  • 说明打开响应页面的类型,如果403的类型过多,那可能要注意是否系统遇到了瓶颈。
  • 一般会关注到的指标是fetches/sec、msecs/connect,它们分别对应的常用性能指标参数QPS-每秒响应用户数和response time,每连接响应用户时间。测试的结果主要也是看这两个值。当然仅有这两个指标并不能完成对性能的分析,我们还需要对服务器的cpu、men进行分析,才能得出结论;
  • 如果要测试HTTPS,需要在编译前指定Makefile中 SSL_TREE 的路径:一般为 /usr 或/usr/local 。

 

2.ab

ab -n 1000 -c 50 http://www.domain.com/test.php
ab将同时向http://www.domain.com/test.php发出50个并发请求,共发出1000次。
有用的信息:
Requests per second:    75.45 [#/sec] (mean)
每秒钟可以处理的请求数为75.45个
  • 若将请求数增加,看看服务器能否处理更大的压力,需要调节Apache的 MaxClients、ThreadsPerChild、MaxThreadsPerChild 等参数,基于httpd.conf中的MPM模块选择。
  • 若本地服务器不是Apache,请使用其它测试方法。


原创文章如转载,请注明:转载自五四陈科学院[http://www.54chen.com]
本文链接: http://www.54chen.com/php-tech/web%e5%8e%8b%e5%8a%9b%e6%b5%8b%e8%af%95%e5%b7%a5%e5%85%b7%e4%bb%8b%e7%bb%8d.html

This entry was posted in linux, php and tagged , , . Bookmark the permalink.

4 Responses to “Web压力测试工具介绍”

  1. d_yang 说:

    我更喜欢siege.

  2. cc0cc 说:

    搜了一下,siege不错啊,地阳你写个使用记录 我补充下说

  3. [...] 然后,必须修改Apache的配置,以确保有一个LoadModule 指令来加载此共享对象。为了简化这一步骤,apxs 可以自动进行该操作,以安装此共享对象到”modules”目录,并更新httpd.conf 文件,命令如下: [...]

  4. 396 说:

    JMETER 也挺好用,操作简单

Leave a Reply