ab命令压测

在性能调优中,ab命令和iperf命令比较好用的,下面就介绍一下ab命令

ApacheBench

ab是apacheBench的缩写,是一个单线程命令,是Apache服务器自带的一个web压力测试工具,最初是用于测试Apache HTTP Server。使用时,ab命令会创建并发访问线程,模拟多个访问者同时对某一个URL地址进行访问。

使用的方法:

ab [option] [http://]host[:port]/path

例如:ab -n 100 -c 10 "http://en.wikipedia.org/wiki/Main_Page"

其中[option]是ab命令提供的可选参数,列举一些常用的参数:

-n  //requests Number of requests to perform 指定压力测试总共访问页面的次数,默认是1

-c //concurrency Number of multiple requests to make at a time 用于一次产生请求的并发数,默认是1

-r //Don't exit on socket receive errors.指定接收到错误信息时不退出程序。

-B //address Address to bind to when making outgoing connections 绑定出口IP地址

-t //timelimit Seconds to max. to spend on benchmarking This implies -n 50000 测试所进行的最大秒数。其内部隐含值是-n 50000。它可以使对服务器的测试限制在一个固定的总时间以内。默认时,没有时间限制。

-s //timeout  Seconds to max. wait for each response Default is 30 seconds  每个相应的最长的时间,默认是30秒

-g //filename Output collected data to gnuplot format file  输出结果信息到gnuplot格式的文件中。

-e //filename  Output CSV file with percentages served   输出结果信息到CSV格式的文件中。

-S // Do not show confidence estimators and warnings. 不显示预估和警告信息。

-d //Do not show percentiles served table. 不显示百分比。

-k //Use HTTP KeepAlive feature    使用HTTP的KeepAlive特性。

-b //windowsize   Size of TCP send/receive buffer, in bytes TCP的发送/接受窗口,以字节为单位

-p //postfile File containing data to POST 包含需要post的数据文件,例如:-p  a.txt,此外还需要结合-T,并且文件的内容需类似像"key1=value1&key2=vaule2"形式

-T //content-type Content-type header for POSTing 设置Context-Type请求头信息,如-T “application/x-www-form-urlencoded”默认值为text/plain

-X //proxy:port  Proxyserver and port number to use 指定使用的代理服务器和端口号,例如:"126.10.10.3:88"

-v //verbosity How much troubleshooting info to print 设置打印帮助信息的详细程度,4或更大值会显示头信息, 3或更大值可以显示响应代码(404, 200等), 2或更大值可以显示警告和其他信息。

-w //Print out results in HTML tables 以HTML表的格式输出结果。默认时,它是白色背景的两列宽度的一张表。

-i  //Use HEAD instead of GET 使用HEAD请求代替GET请求

-C //cookie-name=value 添加cookie信息,其典型形式是name=value的一个参数对。此参数可以重复,用逗号分割。

-H //attribute    Add Arbitrary header line, eg. 'Accept-Encoding: gzip' Inserted after all normal header lines. (repeatable) 添加任意的请求头,例如:"Accept-Encoding: gzip",此参数可重复

-P // proxy-auth-username:password  对一个中转代理提供BASIC认证信任。用户名和密码用英文冒号隔开,并以base64编码形式发送。无论服务器是否需要(即, 是否发送了401认证需求代码),此字符串都会被发送。

-A //Add Basic WWW Authentication, the attributes are a colon separated username and password.基本网络认证,用户名和密码之间用英文冒号隔开。

-x //attributes   String to insert as table attributes 插入字符串作为table标签的属性。

-y //attributes   String to insert as tr attributes 插入字符串作为tr标签的属性。

-z //attributes   String to insert as td or th attributes 插入字符串作为td标签的属性。

你可能感兴趣的:(云计算)