首先咱们来介绍几个经常使用的压测工具,我也只了解这些,webbench/ab/jmeter 这三种工具,html
下面咱们来分别介绍一下这几种工具的安装和使用。linux
一、webbenchnginx
Webbench是有名的网站压力测试工具,它是由Lionbridge公司(http://www.lionbridge.com)开发.它的帮助文件和文档请到:www.webbench.com上查看.
Webbech能测试处在相同硬件上,不一样服务的性能以及不一样硬件上同一个服务的运行情况.webBech的标准测试能够向咱们展现服务器的两项 内容:每秒钟相应请求数和每秒钟传输数据量.webbench不但能具备便准静态页面的测试能力,还能对动态页面(ASP,PHP,JAVA,CGI)进 行测试的能力.还有就是他支持对含有SSL的安全网站例如电子商务网站进行静态或动态的性能测试.web
RedHat/CentOS下的编译安装
下载安装包:wget http://blog.s135.com/soft/linux/webbench/webbench-1.5.tar.gzapache
tar zxf webbench-1.5.tar.gz cd webbench-1.5 make && make install
webbench使用windows
webbench --help (查看命令帮助)
$: webbench -c 100 http://localhost:12345/test Webbench - Simple Web Benchmark 1.5 Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software. Benchmarking: GET http://localhost:12345/test 100 clients, running 30 sec. Speed=495888 pages/min, 586798 bytes/sec. Requests: 247944 susceed, 0 failed.
并发100个,运行30s,访问请求所有成功,速度495888 pages/min, 586798 bytes/sec安全
二、ab服务器
下面是一种快速的方式。网络
yum install httpd-tools并发
安装完成后运行AB工具试试,出现下面的内容代表安装成功。
ab: wrong number of arguments
使用:
#ab -c 1000 -n 4000 http://www.yousite.com/index.html #具体到某页面
-n后面的4000表明总共发出4000个请求;-c后面的1000表示采用1000个并发(模拟1000我的同时访问),后面的网址表示测试的目标URL。
[root@Tomcat ab]# ab -c 1000 -n 4000 http://192.168.0.222/docs/manager-howto.html This is ApacheBench, Version 2.0.40-dev <$Revision: 1.146 $> apache-2.0 Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Copyright 2006 The Apache Software Foundation, http://www.apache.org/ Benchmarking 192.168.0.222 (be patient) Completed 400 requests Completed 800 requests Completed 1200 requests Completed 1600 requests Completed 2000 requests Completed 2400 requests Completed 2800 requests Completed 3200 requests Completed 3600 requests Finished 4000 requests Server Software: nginx/1.4.3 Server Hostname: 192.168.0.222 Server Port: 80 Document Path: /docs/manager-howto.html Document Length: 73924 bytes Concurrency Level: 1000 Time taken for tests: 0.875928 seconds Complete requests: 4000 Failed requests: 0 Write errors: 0 Total transferred: 296732000 bytes HTML transferred: 295696000 bytes Requests per second: 4566.59 [#/sec] (mean) #最重要的指标之一,至关于LR中的每秒事务数,后面括号中的mean表示这是一个平均值,越大抗压越强 Time per request: 218.982 [ms] (mean) #最重要的指标之二,至关于LR中的平均事务响应时间,后面括号中的mean表示这是一个平均值 Time per request: 0.219 [ms] (mean, across all concurrent requests) Transfer rate: 330822.86 [Kbytes/sec] received #平均每秒网络上的流量,吞吐量,越大抗压越强 Connection Times (ms) min mean[+/-sd] median max Connect: 0 0 4.5 0 29 Processing: 1 17 14.5 17 653 Waiting: 0 17 14.5 17 653 Total: 15 18 15.2 17 674 Percentage of the requests served within a certain time (ms) 50% 17 66% 18 75% 18 80% 18 90% 20 95% 22 98% 37 99% 40 100% 674 (longest request)
三、jmeter
jmeter这个工具既能够在windows中运行也能够在linux中运行,不过在windows中运行很容易达到瓶颈,线程开多了,本身机器扛不住了,没法达到真正想要的压测,不像linux cpu能够飚到二三百。
下面介绍下jmeter在linux中的安装和使用
(1)、下载,解压
http://jmeter.apache.org/download_jmeter.cgi
(2)、配置环境变量
vi /etc/profile
添加以下两行代码
export JMETER=/usr/local/jmeter/apache-jmeter-2.9
export PATH=${JMETER}/bin/:${PATH}
source /etc/profile
检查是否配置成功:命令行输入 jmeter -v
若提示权限不够,则 chmod 777 filename
运行前,先在Windows中jmeter图形界面建立好测试计划,而后放到linux系统文件目录下usr/local/jmeter/testplan/linux_jmeter_test.jmx
#jmeter -n -t /usr/local/jmeter/testplan/linux_jmeter_test.jmx -l test_queryweb.jtl
执行完成,本身分析结果吧
http://blog.csdn.net/yangcs2009/article/details/31370091