文档章节

Centos Web 压力测试工具ApacheBench (ab)独立安装

豆花饭烧土豆
 豆花饭烧土豆
发布于 2017/06/05 06:34
字数 862
阅读 32
收藏 0

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

Apache服务自带了应该用于压力测试的工具ab(ApacheBench),对应做一些简单的压力测试,它完全能够胜任,本文主要介绍,在centos中不安装Apache的情况下,安装ab

1,ab运行的时候需要依赖包,我们先安装依赖包,直接yum安装就可以了

yum install apr-util

2, 下载apache的rpm包,分离ab

[root@Tomcat ~]# mkdir ab
[root@Tomcat ~]# cd ab
[root@Tomcat ab]# yum -y install yum-utils
[root@Tomcat ab]# yumdownloader httpd  #yumdownloader 需要安装yum-utils才能使用,默认是没有的安装的
[root@Tomcat ab]# rpm2cpio httpd-2.2.3-91.el5.centos.i386.rpm |cpio -idmv
[root@Tomcat ab]# \cp -pa usr/bin/ab /usr/bin/  #复制到系统PATH就可以使用了

 

3,ab简单用法

参数很多,一般我们用 -c 和 -n 参数就可以了。

#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)

 

主要介绍里面的几个指标,我基本也就看这几个指标,简单测试足够了,如果要全面的监控nginx,需要用到专业的监控程序,如nagios

参考:https://my.oschina.net/harlanblog/blog/395420

 yum install apr-util

yum install yum-utils

cd /opt

mkdir /opt/ab

yum install yum-utils.noarch

yumdownloader httpd-tools*

rpm2cpio httpd-*.rpm | cpio -idmv

cp /opt/ab/usr/bin/ab /usr/bin/

参考:

http://blog.csdn.net/fyqaccpt96/article/details/43272001

http://www.cnblogs.com/terryguan/p/6681055.html

 

© 著作权归作者所有

共有 人打赏支持
豆花饭烧土豆
粉丝 15
博文 355
码字总数 93005
作品 0
深圳
私信 提问
[雪峰磁针石博客] 性能测试工具ApacheBench

ApacheBench简介 ApacheBench 是一个用来衡量http服务器性能的单线程命令行工具。原本针对Apache http服务器,但是也适用于其他http服务器。 ab工具与标准 Apache源码一起发布,免费,开源,...

Python测试开发人工智能
2018/07/18
0
0
Centos Web 压力测试工具ApacheBench (ab)独立安装

Apache服务自带了应该用于压力测试的工具ab(ApacheBench),对应做一些简单的压力测试,它完全能够胜任,本文主要介绍,在centos中不安装Apache的情况下,安装ab 1,ab运行的时候需要依赖包...

静夜听风
2015/04/02
0
1
(总结)Web性能压力测试工具之ApacheBench(ab)详解

(总结)Web性能压力测试工具之ApacheBench(ab)详解 发表于: Linux, Web, Web Server, 个人日记, 原创总结 作者: 博客教主 标签: ab,ApacheBench,Web,压力测试,工具,性能,总结,详解 PS:网...

linjin200
2018/12/25
0
0
centos7.4 安装配置vnc

如果没有安装X-Windows 桌面的话要先安装Xwindows [root@test-bench system]# yum check-update [root@test-bench system]# yum groupinstall "X Window System" 启动桌面——startx #start......

yuri_cto
2018/06/10
0
0
nginx限制某个IP同一时间段的访问次数

如何设置能限制某个IP某一时间段的访问次数是一个让人头疼的问题,特别面对恶意的ddos攻击的时候。其中CC攻击(Challenge Collapsar)是DDOS(分布式拒绝服务)的一种,也是一种常见的网站攻...

Jean
2013/11/30
0
1

没有更多内容

加载失败,请刷新页面

加载更多

centos7重置密码、单用户模式、救援模式、ls命令、chmod命令

在工作当中如果我们错误的配置了文件使服务器不能正常启动或者忘记密码不能登录系统,如何解决这些问题呢?重装系统是可以实现的,但是往往不能轻易重装系统的,下面用忘记密码作为例子讲解如...

李超小牛子
今天
3
0
Python如何开发桌面应用程序?Python基础教程,第十三讲,图形界面

当使用桌面应用程序的时候,有没有那么一瞬间,想学习一下桌面应用程序开发?行业内专业的桌面应用程序开发一般是C++,C#来做,Java开发的也有,但是比较少。本节课会介绍Python的GUI(图形用...

程序员补给栈
今天
6
0
kafka在的使用

一、基本概念 介绍 Kafka是一个分布式的、可分区的、可复制的消息系统。它提供了普通消息系统的功能,但具有自己独特的设计。 这个独特的设计是什么样的呢? 首先让我们看几个基本的消息系统...

狼王黄师傅
今天
3
0
Android JNI总结

0x01 JNI介绍 JNI是Java Native Interface的缩写,JNI不是Android专有的东西,它是从Java继承而来,但是在Android中,JNI的作用和重要性大大增强。 JNI在Android中起着连接Java和C/C++层的作...

天王盖地虎626
昨天
3
0
大数据教程(11.8)Hive1.2.2简介&初体验

上一篇文章分析了Hive1.2.2的安装,本节博主将分享Hive的体验&Hive服务端和客户端的使用方法。 一、Hive与hadoop直接的关系 Hive利用HDFS存储数据,利用MapReduce查询数据。 二、Hive与传统数...

em_aaron
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部