ab测试工具使用

ab简介
  • 是apache自带的压力测试工具。其原理是ab命令会创建多个并发访问线程,模拟多个访问者同时对某一URL地址进行访问。它的测试目标是基于URL的,因此,它既可以用来测试apache的负载压力,也可以测试nginx、lighthttp、tomcat、IIS等其它Web服务器的压力。
  • ab命令对发出负载的计算机要求很低,它既不会占用很高CPU,也不会占用很多内存。但却会给目标服务器造成巨大的负载,其原理类似CC攻击。自己测试使用也需要注意,否则一次上太多的负载。可能造成目标服务器资源耗完,严重时甚至导致死机。
ab安装
  • window

    • 如果是phptudy等集成环境,只需要通过终端进入apache安装模块下的bin目录,会看到ab的应用程序文件,通过ab -v可以看到ab的相关信息。
  • linux

    • 第一种方法是直接安装apache来使用ab
    • 如果不想安装apache,可以直接安装apache的工具包httpd-tools,就可以使用ab
      yum -y install httpd-tools
ab参数说明
  • -n 表示请求数
  • -c表示并发数
  • -t测试所进行的最大秒数
  • -T:post数据所使用的Content-Type头信息,如果-T 'application/x-www-form-urlencoded'
使用
  • get请求

    ab -c 10 -n 10 http://www.test.api.com/?gid=2
  • post请求

    • 在当前目录下创建一个文件post.txt

      编辑文件post.txt写入

      cid=4&status=1

      相当于post传递cid,status参数

      ab -n 100 -c 10 -p 'post.txt' -T 'application/x-www-form-urlencoded' 'http://test.api.com/ttk/auth/info/'
  • 模拟用户登录

    • 请参考以下步骤:先用账户和密码登录后,用开发者工具找到标识这个会话的Cookie值(Session ID)记下来复制Cookie信息
ab -n 100 -c 100 -H "Cookie: JSESSIONID=01BCDA8D30F3011A1C8136ED9B0A3ED6.server;USER.oooooooooooooooo=ab84b0125a24ecb263c6b677b989683ca26da6b4076ae09e1d5ccb8595a92a6d28233e61d860c9d0b745b0dfd8426494"  http://127.0.0.1:8007/shopCenter/zcyAccount/checkZcyAccount.do
返回参数说明
  • Time taken for tests表示所有这些请求被处理完成所花费的总时间。
  • Failed requests表示失败的请求数量,
  • Total transferred表示所有请求的响应数据长度总和,包括每个HTTP响应数据的头信息和正文数据的长度。注意这里不包括HTTP请求数据的长度,仅仅为web服务器流向用户PC的应用层数据总长度。
  • HTML transferred表示所有请求的响应数据中正文数据的总和,也就是减去了Total transferred中HTTP响应数据中的头信息的长度。
  • Requests per second吞吐率,
  • Time per request用户平均请求等待时间
  • Time per requet(across all concurrent request)服务器平均请求等待时间
  • Transfer rate表示这些请求在单位时间内从服务器获取的数据长度,可以帮助排除是否存在网络流量过大导致响应时间延长的问题
测试关心指标
  • 吞吐率:

    • 服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请求数。某个并发用户数下单位时间内能处理的最大请求数,称之为最大吞吐率。
    • 对应指标:Requests per second
  • 用户平均请求等待时间

    • 处理完成所有请求数所花费的时间/ (总请求数 / 并发用户数)
    • 对应指标:Time per request
  • 服务器平均请求等待时间

    • 对应指标:Time per request: ***[ms] (mean, across all concurrent requests)

linux--->ab测试工具使用的更多相关文章

  1. Apache ab 测试工具使用(一)

    简述: 试用apache ab测试工具 下载点 http://httpd.apache.org/download.cgi 参考: http://jingyan.baidu.com/article/e3 ...

  2. Apache ab测试工具使用方法(无参、get传参、post传参)

    Ab测试工具是apache自带的测试工具,具有简单易上手的特性,下面我总结一下我的使用方法,首先去官方下载apache程序包,我下的最新版本apache2.4.23,下载地址http://httpd. ...

  3. Apache ab测试工具使用方法(无参、get传参、post传参)(转)

    转自Apache ab测试工具使用方法(无参.get传参.post传参) Ab测试工具是apache自带的测试工具,具有简单易上手的特性,下面我总结一下我的使用方法,首先去官方下载apache程序包, ...

  4. linux 压力测试工具之ab

    简介 Apache Benchmark(简称ab) 是Apache安装包中自带的压力测试工具 ,简单易用 在此提供 ab 在 centOS7 下的安装和使用方法注:个人发现,之前安装的centos6. ...

  5. nginx,linux压力测试工具webbench

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

  6. linux 压力测试工具 webbench

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

  7. Linux压力测试工具

    1 http_load:http://www.oschina.net/p/http_load 命令行输入man http_load 或者 http_load -h可以看到工具的使用方式: 参数说明: ...

  8. MAC系统上安装Apache ab测试工具

    第一步:下载 Apache HTTP Server http://httpd.apache.org/download.cgi#apache24 第二步:安装brew工具 https://brew.sh ...

  9. linux压力测试工具stress

    最近给PASS平台添加autoscaling的功能,根据服务器的负载情况autoscaling,为了测试这项功能用到了stress这个压力测试工具,这个工具相当好用了.具体安装方式就不说了.记录下这个 ...

  10. Linux压力测试工具Tsung安装、使用和图形报表生成

    简介 Tsung 是一个压力测试工具,可以测试包括HTTP, WebDAV, PostgreSQL, MySQL, LDAP, and XMPP/Jabber等服务器.针对 HTTP 测试,Tsung ...

随机推荐

  1. Linux使用expect和rsync实现密码自动输入无人值守自动同步备份

    我们常用sudo,ssh.ftp命令操作服务器或者修改权限的时候都会要求输入password,但是shell脚本运行中该如何交互实现自动输入密码呢? 下面总结三种实现方法. 一.重定向:用重定向方法实 ...

  2. 【Spring Cloud 源码解读】之 【这也太神奇了,RestTemplate加上一个@LoadBalanced注解就能实现负载均衡!】

    前提概要: 前天,有个前端大佬问了我两个问题:为啥不引入Ribbon依赖就能使用Ribbon?为啥RestTemplate加上@LoadBalanced注解就能负载均衡了?我也表示很疑惑,而我自己其实 ...

  3. Python - Tuple 怎么用,为什么有 tuple 这种设计?

    背景 看到有同学很执着的用 tuple,想起自己刚学 python 时,也是很喜欢 tuple,为啥?因为以前从来没见过这种样子的数据 (1,2), 感觉很特别,用起来也挺好用 i,j=(1,2), ...

  4. word HTML文件与Markdwon互相转换的几种方式

    Tip:word文件与Markdwon转换往往是可逆的.无论使用哪种方式,要想完美转换,必须要预先处理掉markdown与word不兼容的格式,如word文件对象,带边框的代码块等等 方法一:借助pa ...

  5. 0017 CSS 三大特性:层叠性、继承性、优先级

    目标: 理解 能说出css样式冲突采取的原则 能说出那些常见的样式会有继承 应用 能写出CSS优先级的算法 能会计算常见选择器的叠加值 5.1 CSS层叠性 概念: 所谓层叠性是指多种CSS样式的叠加 ...

  6. Java8 LocalDate计算两个日期的间隔天数

    Java8新增了java.time包,提供了很多新封装好的类,使我们可以摆脱原先使用java.util.Time以及java.util.Calendar带来的复杂. 其中LocalDate正是本文中使 ...

  7. 日期格式化使用 YYYY-MM-dd 的潜在问题

    昨天在v站上看到这个关于YYYY-MM-dd的使用而出现Bug的帖子(v2ex.com/t/633650)非常有意思,所以拿过来分享一下. 在任何编程语言中,对于时间.数字等数据上,都存在很多类似这种 ...

  8. selenium自动化测试入门 定位frame和iframe中的元素对象

    < frame> <iframe> 标签,浏览器会在标签中打开一个特定的页面窗口(框架),它在本窗口中嵌套进入一个网页,当用selenium定位页面元素的时候会遇到定位不到fr ...

  9. ACID特性及幻读的理解

    事务是关系型数据库的重要特性.它是一个包含了一条或多条SQL语句的逻辑原子单元.一个事务包含的SQL要么全部提交,要么全部回滚. Oracle 官方文档中对事务的描述如下: A transaction ...

  10. Arduino_URO端口与AtMega328p引脚对应图

    Arduino微控制器的数字端口和模拟端口与ATMEGA 328芯片引脚的对应关系图如下.标有0~13标号的引脚对应的是数字端口,在0~13前面有符号“~”的引脚对应的端口具有PWM输出功能.标有A0 ...