如何通过Apache Bench实现web压力测试
一、Apache Bench简介
ApacheBench 是 Apache 服务器自带的一个web压力测试工具,简称ab。ab又是一个命令行工具,对发起负载的本机要求很低,根据ab命令可以创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问,因此可以用来测试目标服务器的负载压力。总的来说ab工具小巧简单,上手学习较快,可以提供需要的基本性能指标,但是没有图形化结果,不能监控。
二、Apache Bench安装
首先需要安装Apache服务器,下载地址:https://www.apachelounge.com/download/,64位操作系统选上面一个压缩包。
安装
Ubuntu
1: 使用apt在线安装:sudo apt install apache2-utils
2: 检查安装是否成功:ab -V
使用常用参数说明
测试报告解读
例子
(1) 模拟1个客户端请求100次:
ab -n 100 http://www.example.com/
(2) 模拟100个客户端请求10000次:
ab -n 10000 -c 100 http://www.example.com/
(3) 调用POST方法的接口10次,传输的数据格式为JSON:
ab -n 10 -p json-file http://www.example.com/
(4) 调用OPTIONS方法的接口10次:
ab -n 10 -m OPTIONS http://www.example.com/
(5) 输出每次请求的返回信息:
ab -n 10 -v 2 http://www.example.com/
注意事项
- 使用-H Content-Type 不能代替-T Content-Type指定Content-Type 头部
- 如果提示ab: invalid URL,可能是URL最右边缺少/,例如http://www.example.com需要改为http://www.example.com/。
- 需要注意如果压测的HTTP接口是通过返回结果判断是否成功(只要能响应都会返回200状态码),则需要自行去想办法识别失败的请求。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Web性能压力测试工具Siege使用教程
Siege是一个多线程http负载测试和基准测试工具.通过使用Siege 提供的功能,可以很容易的制定测试计划:包括规定使用并发用户数.重复数量,从而可以模拟在服务器.网络或者其它对象上附加负载以测试他们提供服务的受压能力,方便的测试服务器的性能. 官方下载地址:http://www.joedog.org/pub/siege/ Siege安装: #wget http://www.joedog.org/pub/siege/siege-latest.tar.gz #tar -xzvf siege-l
-
python实现websocket的客户端压力测试
使用python进行websocket的客户端压力测试,这个代码是从github上 找到.然后简单修改了下.大神运用了进程池,以及线程池的内容.所以保存下来,学习学习 然后需要说明的是:本次用的python2.7,也尝试用python3.6,但是老实出现websocket-client包和python3不能兼容的情况,提示没有相关的方法.所以不得已最后又采用了python2 # -*- coding:utf-8 -*- # __author__ == 'chenmingle' import we
-
Web压力测试工具:http_load、webbench、ab、Siege使用方法
前言:常在网络飘,哪有不挨刀?做网站的站长说不准哪天得罪了XX人,二话不说直接操着DDOS就上来搞你了,黑不了你,哥就D死你,遇到这样的无赖,还真没办法,因此经常性的给自己的网站做做压力测试,看看服务器的承载能力是很有必要的一件事. 一.http_load 程序非常小,解压后也不到100K http_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载.但是它不同于大多数压力测试工 具,它可以以一个单一的进程运行,一般不会把客户机搞死.还可以测试HTTPS类的网站请求. 下载地址:h
-
Linux下Web网站压力测试工具Webbench使用教程
Webbench是一个非常简单的压力测试工具,Webbench最多可以模拟3万个并发连接去测试网站的负载能力. (1)Webbench安装 复制代码 代码如下: wget http://www.jb51.net/soft/linux/webbench-1.5.tar.gz tar zxvf webbench-1.5.tar.gz cd webbench-1.5 make make install (2)Webbench使用 复制代码 代码如下: webbench -c 1000 -t 60 ht
-
Apache的压力测试以及web性能优化的常用知识总结
什么是带宽? 误解:"数据在线路中的移动速度"."数据的传输速度" 我们所说的带宽是指数据的发送速度,比如百兆网卡,指网卡的最大发送速度是100Mbps,也就是说网卡在一秒钟最多可以发送100Mb的数据:相关的因素: 数据发送装置将二进制信号传送到线路的能力,也称信号传输频率,以及另一端数据接收装置对二进制信号接收的能力,也包括线路对传输频率的支持程度: 数据传输介质的并行度,等价于计算机系统总线宽度的概念: 习惯与约定 b:比特单位 bit: B:字节单位 Byt
-
web压力测试工具_动力节点Java 学院整理
0. Grinder – Grinder是一个开源的JVM负载测试框架,它通过很多负载注射器来为分布式测试提供了便利. 支持用于执行测试脚本的Jython脚本引擎HTTP测试可通过HTTP代理进行管理.根据项目网站的说法,Grinder的 主要目标用户是"理解他们所测代码的人--Grinder不仅仅是带有一组相关响应时间的'黑盒'测试.由于测试过程可以进行编码--而不是简单地脚本 化,所以程序员能测试应用中内部的各个层次,而不仅仅是通过用户界面测试响应时间. 1. Pylot -Pylot 是
-
Linux下Web性能压力测试工具http_load使用教程
http_load介绍: http_load基于linux平台的一种性能测工具.以并行复用的方式运行,用以测试web服务器的吞吐量与负载,测试web页面的性能. 下载及安装: wget http://www.acme.com/software/http_load/http_load-12mar2006.tar.gz tar xzvf http_load-12mar2006.tar.gz cd http_load-12mar2006/ make && make install http_lo
-
14款好用开源的Web应用压力负载,性能测试工具推荐
JMeter JMeter是Apache组织的开放源代码项目,它是功能和性能测试的工具,100%的用java实现. Grinder Grinder是一个负载测试框架,通过Jython来编写测试脚本,基于HTTP的测试可以由浏览器来记录整个要测试的过程. 关键特性: 泛型测试方法 灵活的测试脚本编写 分布式框架 成熟的HTTP支持 Multi-Mechanize Multi-Mechanize 是一个开源的Web性能和负载测试框架,可让你并发运行多个 Python 脚本来对网站或者Web服务进行压
-
如何通过Apache Bench实现web压力测试
一.Apache Bench简介 ApacheBench 是 Apache 服务器自带的一个web压力测试工具,简称ab.ab又是一个命令行工具,对发起负载的本机要求很低,根据ab命令可以创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问,因此可以用来测试目标服务器的负载压力.总的来说ab工具小巧简单,上手学习较快,可以提供需要的基本性能指标,但是没有图形化结果,不能监控. 二.Apache Bench安装 首先需要安装Apache服务器,下载地址:https://www.apa
-
Apache ab并发负载压力测试实现方法
ab命令原理 Apache的ab命令模拟多线程并发请求,测试服务器负载压力,也可以测试nginx.lighthttp.IIS等其它Web服务器的压力. ab命令对发出负载的计算机要求很低,既不会占用很多CPU,也不会占用太多的内存,但却会给目标服务器造成巨大的负载,因此是某些DDOS攻击之必备良药,老少皆宜.自己使用也须谨慎.否则一次上太多的负载,造成目标服务器直接因内存耗光死机,而不得不硬重启,得不偿失. 在带宽不足的情况下,最好是本机进行测试,建议使用内网的另一台或者多台服务器通过内网进行测
-
apache ab工具页面压力测试返回结果含义解释
ab是apache自带的一个很好用的压力测试工具,当安装完apache的时候,就可以在bin下面找到ab 参数说明及示例 我们可以模拟100个并发用户,对一个页面发送1000个请求 输入命令:ab -n1000 -c100 http://www.jb51.net/ 其中-n代表请求数,-c代表并发数 返回结果: ##首先是apache的版本信息 This is ApacheBench, Version 2.3 <Revision:655654> Copyright 1996 Adam Twis
-
Apache自带的ab压力测试工具的实现
目录 Apache Bench 简介 ab的原理 ab的安装 参数介绍 ab测试案例 示例2 Apache Bench 简介 Apache Bench 是 Apache 服务器自带的一个web压力测试工具,简称 ab . ab 非常实用,它不仅可以对apache服务器进行网站访问压力测试,也可以对或其它类型的服务器进行压力测试.比如nginx.tomcat.IIS等 ab的原理 ab的原理:ab命令会创建 多个并发 访问线程,模拟 多个访问者 同时对某一 URL地址 进行访问. 它的测试目标是基
-
配置ab来为Nginx服务器做压力测试的方法
在运维工作中,压力测试是一项非常重要的工作.比如在一个网站上线之前,能承受多大访问量.在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验. 但是,在压力测试中存在一个共性,那就是压力测试的结果与实际负载结果不会完全相同,就算压力测试工作做的再好,也不能保证100%和线上性能指标相同.面对这些问题,我们只能尽量去想方设法去模拟.所以,压力测试非常有必要,有了这些数据,我们就能对自己做维护的平台做到心中有数. 目前较为常见的网站压力测试工具有webbench.ab(apache benc
-
使用Apache ab工具对Apache服务器进行简单的压力测试
1.安裝ab命令 sudo apt-get install apache2-utils 2.ab命令参数说明 Usage: ab [options] [http[s]://]hostname[:port]/path Options are: //总的请求数 -n requests Number of requests to perform //一次同时并发的请求数 总的请求数(n)=次数*一次并发数(c) -c concurrency Number of multiple requests t
随机推荐
- 菜鸟蔡之Ajax复习第一篇(后台asp.net)(传统的JavaScript方法实现Ajax功能)
- 用vue封装插件并发布到npm的方法步骤
- 理解JavaScript的caller,callee,call,apply
- Android自定义密码样式 黑点转换成特殊字符
- jQuery+php简单实现全选删除的方法
- Oracle删除archivelog文件的正确方法
- PHP中的正则表达式函数介绍
- Python字符串拼接的几种方法整理
- linux下源码安装mysql5.6.20教程
- Docker 数据卷及数据容器详细介绍及示例
- Android WebView线性进度条实例详解
- SpringMVC返回json数据的三种方式
- JavaWeb登陆功能实现代码
- php xfocus防注入资料
- Drupal 添加模块出现莫名其妙的错误的解决方法(往往出现在模块较多时)
- python获取指定网页上所有超链接的方法
- js 针对html DOM元素操作等经验累积
- Android使用TextView跑马灯效果
- 使用ionic切换页面卡顿的解决方法
- PHP中的Streams详细介绍