Apache 压力测试工具ab

在 Apache 有个叫 ab(ApacheBench) 的程序, 此程序是专门用在做压力测试用的软件. ApacheBench(ab) 用来测试 apache 执行效率,可以用来测试网站的压力工具.

ab 参数

ab 参数:

Usage: /usr/sbin/ab [options] [http[s]://]hostname[:port]/path
Options are:
§ -n requests Number of requests to perform
§ -c concurrency Number of multiple requests to make
§ -t timelimit Seconds to max. wait for responses
§ -p postfile File containg data to POST
§ -T content-type Content-type header for POSTing
§ -v verbosity How much troubleshooting info to print
§ -w Print out results in HTML tables
§ -i Use HEAD instead of 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)
§ -H attribute Add Arbitrary header line, eg. 'Accept-Encoding: zop'
§ 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.
§ -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
§ -s Use httpS instead of HTTP (SSL)
§ -h Display usage information (this message)

ab 使用

ab使用范例: 要执行 1000 次的 connection, 20 次的 concurrent (并行, 同时):

语法: ab -n 1000 -c 20 http://localhost/

产生出来的结果. 要注意的是以下几个:

§ Time taken for tests: 总共执行花了多久的时间.(以上 1000 次共多久)

§ Requests per second: 每秒平均可以处理多少个 connection.

下面是一个在Windows Azure虚拟机上做的测试,虚拟机性能不怎么样呀(和这个测试相比 ASP.NET Web Api vs Node.js Benchmark, Take 2)。

Microsoft Windows [Version 6.2.9200]

(c) 2012 Microsoft Corporation. All rights reserved.

D:\runnable\test>ab -n 100000 -c 80 -p test.dat -T 'application/json' http://loc

alhost/

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 localhost (be patient)

Completed 10000 requests

Completed 20000 requests

Completed 30000 requests

Completed 40000 requests

Completed 50000 requests

Completed 60000 requests

Completed 70000 requests

Completed 80000 requests

Completed 90000 requests

Completed 100000 requests

Finished 100000 requests

Server Software:        Microsoft-IIS/8.0

Server Hostname:        localhost

Server Port:            80

Document Path:          /

Document Length:        5269 bytes

Concurrency Level:      80

Time taken for tests:   112.004 seconds

Complete requests:      100000

Failed requests:        0

Write errors:           0

Non-2xx responses:      100000

Total transferred:      553000000 bytes

Total POSTed:           62200000

HTML transferred:       526900000 bytes

Requests per second:    892.83 [#/sec] (mean)

Time per request:       89.603 [ms] (mean)

Time per request:       1.120 [ms] (mean, across all concurrent requests)

Transfer rate:          4821.62 [Kbytes/sec] received

                        542.32 kb/s sent

                        5363.94 kb/s total

Connection Times (ms)

              min  mean[+/-sd] median   max

Connect:        0    0   1.3      0      16

Processing:     0   89  65.5     63     532

Waiting:        0   89  65.5     63     532

Total:          0   89  65.5     63     532

Percentage of the requests served within a certain time (ms)

  50%     63

  66%     78

  75%     94

  80%     94

  90%    141

  95%    235

  98%    344

  99%    407

 100%    532 (longest request)

相关文章 :

Apache自带的压力测试工具——ab初体验

ASP.NET Web Api vs Node.js Benchmark, Take 2

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏软件开发

Spring MVC 学习总结(十一)——IDEA+Maven+多模块实现SSM框架集成

与SSH(Struts/Spring/Hibernate/)一样,Spring+SpringMVC+MyBatis也有一个简称SSM,Spring实现业务对象管...

2882
来自专栏用户2442861的专栏

cmake教程4(find_package使用)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haluoluo211/article/d...

4373
来自专栏一个会写诗的程序员的博客

13.7 SpringBoot集成日志系统logback的几个问题问题1: Logging system failed to initialize using configuration from

让人感到疑惑的是,SpringBoot居然没有对application.properties配置文件value末端作空格trim处理。

4691
来自专栏扎心了老铁

springboot kafka集成(实现producer和consumer)

本文介绍如何在springboot项目中集成kafka收发message。 1、先解决依赖 springboot相关的依赖我们就不提了,和kafka相关的只依赖...

9435
来自专栏大大的微笑

深入理解JVM原理之编译openjdk7

Java虚拟机种类很多例如:HotSpot 丶 JRockit 丶 J9等 我们一般用的就是HotSpot,如果我们电脑上装了JDK,可以运行java -ver...

2879
来自专栏陈树义

玩转 SSH(六):SpringMVC + MyBatis 架构搭建(注解版)

一、创建 SSMVCAnnoDemo 项目 点击菜单,选择“File -> New Project” 创建新项目。选择使用 archetype 中的 maven...

4687
来自专栏一个会写诗的程序员的博客

《Springboot极简教程》使用Spring Boot, JPA, Mysql, ThymeLeaf,gradle, Kotlin快速构建一个CRUD Web App

使用Spring Boot, JPA, Mysql, ThymeLeaf,gradle, Kotlin快速构建一个CRUD Web App

2102
来自专栏Java成神之路

Spring_总结_03_装配Bean(一)之自动装配

(2)当必须要显示配置的时候,再使用类型安全并且比XML更强大的JavaConfig

1032
来自专栏A周立SpringCloud

使用Feign实现Form表单提交

之前,笔者写了《使用Spring Cloud Feign上传文件》。近日,有同事在对接遗留的Struts古董系统,需要使用Feign实现Form表单提交。其实步...

5536
来自专栏乐沙弥的世界

ORA-27090 故障一例

    最近的alert日志中碰到了ORA-27090的错误信息,其错误提示为Unable to reserve kernel resources for as...

752

扫码关注云+社区

领取腾讯云代金券