Apache安装包中自带的压力测试工具 Apache Benchmark(简称ab) 简单易用,这里就采用 ab作为压力测试工具了。

1.独立安装

通过 yum-utils中的yumdownload 工具下载安装包解开后就能得到独立的 ab可执行文件了。
yum install yum-utils.noarch
         yumdownloader httpd-tools.x86_64
rpm2cpio httpd-*.rpm | cpio -idmv

2.参数详解

摘自: http://www.path8.net/tn/archives/5574
-n requests     Number of requests to perform
//在测试会话中所执行的请求个数。默认时,仅执行一个请求
-c concurrency Number of multiple requests to make
//一次产生的请求个数。默认是一次一个。
-t timelimit    Seconds to max. wait for responses
//测试所进行的最大秒数。其内部隐含值是 -n 50000。它可以使对服务器的测试限制在一个固定的总时间以内。默认时,没有时间限制。
-p postfile     File containing data to POST
//包含了需要POST 的数据的文件 .
-T content-type Content-type header for POSTing
//POST数据所使用的Content-type头信息。
-v verbosity    How much troubleshooting info to print
//设置显示信息的详细程度 - 4或更大值会显示头信息, 3或更大值可以显示响应代码 (404, 200等), 2或更大值可以显示警告和其他信息。 -V 显示版本号并退出。
-w              Print out results in HTML tables
//以HTML 表的格式输出结果。默认时,它是白色背景的两列宽度的一张表。
-i              Use HEAD instead of GET
// 执行HEAD 请求,而不是 GET。
-x attributes   String to insert as table attributes
//
-y attributes   String to insert as tr attributes
//
-z attributes   String to insert as td or th attributes
//
-C attribute    Add cookie, eg. 'Apache=1234. (repeatable)
//-C cookie-name=value 对请求附加一个 Cookie:行。 其典型形式是 name=value的一个参数对。此参数可以重复。
-H attribute    Add Arbitrary header line, eg. 'Accept-Encoding: gzip'
Inserted after all normal header lines. (repeatable)
-A attribute    Add Basic WWW Authentication, the attributes
are a colon separated username and password.
-P attribute    Add Basic Proxy Authentication, the attributes
are a colon separated username and password.
//-P proxy-auth-username:password 对一个中转代理提供 BASIC认证信任。用户名和密码由一个 :隔开,并以base64 编码形式发送。无论服务器是否需要 (即, 是否发送了 401认证需求代码),此字符串都会被发送。
-X proxy:port   Proxyserver and port number to use
-V              Print version number and exit
-k              Use HTTP KeepAlive feature
-d              Do not show percentiles served table.
-S              Do not show confidence estimators and warnings.
-g filename     Output collected data to gnuplot format file.
-e filename     Output CSV file with percentages served
-h              Display usage information (this message)
//-attributes 设置 属性的字符串 . 缺陷程序中有各种静态声明的固定长度的缓冲区。另外,对命令行参数、服务器的响应头和其他外部输入的解析也很简单,这可能会有不良后果。它没有完整地实现 HTTP/1.x; 仅接受某些' 预想'的响应格式。 strstr(3)的频繁使用可能会带来性能问题,即 , 你可能是在测试ab而不是服务器的性能。

3.输出解读

下面随便测试一个网页地址,来看下 ab输出的各项指标的含义。
===============================================================================
[root@server23 bin]# ./ab -n 100 -c 5 http://test.com
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking test.com (be patient).....done
Server Software:        nginx
Server Hostname:        test.com
Server Port:            80
Document Path:          /
Document Length:        0 bytes
Concurrency Level:      5
Time taken for tests:   1.559 seconds
Complete requests:      100
Failed requests:        0
Write errors:           0
Non-2xx responses:      100
Total transferred:      21500 bytes
HTML transferred:       0 bytes
Requests per second:    64.15 [#/sec] (mean)
Time per request:       77.936 [ms] (mean)
Time per request:       15.587 [ms] (mean, across all concurrent requests)
Transfer rate:          13.47 [Kbytes/sec] received
Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:       36   37   0.7     37      39
Processing:    37   41   4.6     40      59
Waiting:       37   41   4.6     39      59
Total:         73   78   4.5     77      96
Percentage of the requests served within a certain time (ms)
  50%     77
  66%     78
  75%     79
  80%     79
  90%     81
  95%     95
  98%     95
  99%     96
 100%     96 (longest request)
===============================================================================
上面测试时用 -c参数指定并发连接数为5,下面是关键指标含义的解释:

Time per request:       77.936 [ms] (mean)
每批请求处理完成的平均时间
Time per request:       15.587 [ms] (mean, across all concurrent requests)
          每个请求处理完成的平均时间 =每批完成时间77.936除以并发数 5
Requests per second:    64.15 [#/sec] (mean)
          每秒能处理的的请求数 =1000ms除以15.587

转载于:https://www.cnblogs.com/xiaomaohai/p/6157714.html

压力测试工具Ab简介相关推荐

  1. 压力测试工具ab 及 centos下单独安装方法

    为什么80%的码农都做不了架构师?>>>    压力测试工具Ab简介 Apache安装包中自带的压力测试工具 Apache Benchmark(简称ab) 简单易用,这里就采用 ab ...

  2. 压力测试工具ab介绍

    超实用压力测试工具-ab工具 了解几个关于压力测试的概念: 吞吐率(Requests per second) 概念:服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处 ...

  3. 服务器压力测试工具ab

    在学习ab工具之前,我们需了解几个关于压力测试的概念 吞吐率(Requests per second) 概念:服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请 ...

  4. 网站压力测试工具webbench简介、安装、使用

    webbench最多可以模拟3万个并发连接去测试网站的负载能力,个人感觉要比Apache自带的ab压力测试工具好,安装使用也特别方便. 1.适用系统: Linux 2.编译安装: wget http: ...

  5. linux下web压力测试工具ab使用及详解

    APACHE自带的测试工具AB(apache benchmark).在APACHE的bin目录下. 格式: ./ab [options] [http://]hostname[:port]/path 参 ...

  6. Apache自带压力测试工具—ab

    ab压力测试工具: ab全称为:apache bench 我们先来了解一下压力测试的概念: 吞吐率(Requests per second) 概念:服务器并发处理能力的量化描述,单位是reqs/s,指 ...

  7. apache压力测试工具ab

    简介 ab的全称是ApacheBench,是 Apache 附带的一个小工具,专门用于 HTTP Server 的benchmark testing,可以同时模拟多个并发请求.前段时间看到公司的开发人 ...

  8. PHP Apache自带的压力测试工具ab(apache bench)

    ApacheBench 是一个指令列程式,专门用来执行网站服务器的运行效能,特别是针对Apache 网站服务器.这原本是用来检测 Apache 网站服务器能够提供的效能,特别是可以看出Apache能提 ...

  9. web压力测试工具ab安装及使用

    ​## 安装 brew install aprbrew install apr-utilbrew install openssl --upgradewget http://mirrors.tuna.t ...

最新文章

  1. python opencv图片编码为h264文件
  2. matlab都有什么接口,介绍MATLAB与C++的几种接口方式
  3. fasthttp 快在哪里
  4. ap计算机科学4分还要再考吗,CB官方发布2020年AP计算机科学考试(CSA)的细节:考试时间/考试题型/备考资料/评分标准/考前建议...
  5. 2.Explore Your Data
  6. matlab心率和呼吸相关性分析,动态心电图的睡眠呼吸监测与心率变异性的相关性分析...
  7. python企业真题实战 - 妙计旅行面试题
  8. 知识图谱概论(二):概念具象化描述
  9. 中断linux命令快捷键_Linux常用快捷键和基本命令
  10. android 高光动画,分享AirDroid高光时刻:它是如何使我高效工作和生活的?
  11. 在maven web项目中配置log4j打印日志及Mybatis sql语句
  12. 智能驾驶之技术概念综述
  13. 阿里云视频直播 web前端[移动端] Aliplayer的简单案例
  14. 数据和数据库定义是什么?
  15. 通过修改注册表激活 Windows 操作系统
  16. 大数据入门必读好书推荐
  17. 传奇GEE/GOM引擎的传奇假人系统如何登陆假人
  18. centos虚拟机提高网速方法
  19. iPhone 系统刷机
  20. 库里花18万美元买一个数字头像 而这可能只是NFT爆火的前奏

热门文章

  1. mysql++月份排序_Mysql 按月份为组进行统计排序_MySQL
  2. pcb 假八层_八层板的成本却只六层的性能,PCB设计遭遇假八层该怎么办?
  3. linux wchar t char,linux 下 Linux 下char转换为wchar_t
  4. 和平精英为什么找不到服务器,和平精英为什么登不上去 和平精英游戏登不上原因分析...
  5. 教育学专硕考试科目计算机,2017考研:哪些专业的考试科目相同?
  6. mysql的存储引擎种类,mysql 存储引擎,基本数据类型
  7. php百分比乘加,用php简单实现加减乘除计算器
  8. java随机生成不重复的数组_Java生成不重复的随机数组的方法
  9. python背景怎么自定义铃声_python爬取手机铃声
  10. python猜数游戏在程序中预设一个_一道Python简单程序结构练习题