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:runnabletest>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

Time per request: 89.603 ms

Time per request: 1.120 ms

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)

本文来自云栖社区合作伙伴“doNET跨平台”,了解相关信息可以关注“opendotnet”微信公众号

目录
相关文章
|
9天前
|
测试技术 C语言
网站压力测试工具Siege图文详解
网站压力测试工具Siege图文详解
19 0
|
1月前
|
JavaScript jenkins 测试技术
这10款性能测试工具,收藏起来,测试人的工具箱!
这10款性能测试工具,收藏起来,测试人的工具箱!
|
1月前
|
人工智能 监控 测试技术
利用AI辅助工具提升软件测试效率
【2月更文挑战第17天】 随着科技的不断发展,人工智能(AI)在各个领域的应用越来越广泛。在软件测试领域,AI技术也发挥着重要作用。本文将探讨如何利用AI辅助工具提升软件测试效率,包括自动化测试、智能缺陷识别和预测等方面。通过引入AI技术,软件测试过程将变得更加高效、准确和可靠。
161 1
|
1月前
|
Web App开发 前端开发 测试技术
探索自动化测试工具:Selenium的威力与应用
探索自动化测试工具:Selenium的威力与应用
探索自动化测试工具:Selenium的威力与应用
|
29天前
|
测试技术
现代软件测试中的自动化工具与挑战
传统软件测试面临着越来越复杂的系统架构和不断增长的测试需求,自动化测试工具应运而生。本文将探讨现代软件测试中自动化工具的应用和挑战,深入分析其优势与局限性,为软件测试领域的发展提供思路和启示。
|
25天前
|
jenkins 测试技术 持续交付
现代软件测试中的自动化工具与挑战
随着软件开发领域的不断发展,自动化测试工具在测试过程中扮演着越来越重要的角色。本文将探讨现代软件测试中自动化工具的应用及面临的挑战,旨在帮助开发人员和测试人员更好地理解和应对自动化测试中的问题。
|
9天前
|
测试技术 Linux Apache
网站压力测试工具webbench图文详解
网站压力测试工具webbench图文详解
8 0
|
18天前
|
Java 测试技术 API
软件测试中的自动化工具与策略
软件测试是确保软件质量的重要环节,而自动化测试工具和策略的应用在提高测试效率和准确性方面发挥着重要作用。本文将介绍几种常见的自动化测试工具,并探讨在软件测试中应用自动化测试的最佳实践和策略。
|
20天前
|
Web App开发 Java 测试技术
深入理解与应用软件自动化测试工具Selenium
随着软件开发的快速发展,软件测试在保证产品质量方面发挥着越来越重要的作用。其中,自动化测试以其效率高、成本低的特点受到了广大开发者的欢迎。本文主要介绍了自动化测试工具Selenium的基本概念、原理以及在实际开发中的应用,旨在帮助读者更好地理解和使用Selenium进行高效的自动化测试。
22 4
|
28天前
|
人工智能 测试技术 虚拟化
现代软件测试中的自动化工具与技术
随着信息技术的迅猛发展,现代软件开发和测试领域也在不断创新。本文将探讨现代软件测试中自动化工具与技术的应用。通过分析自动化测试的优势、挑战以及最佳实践,帮助读者更好地理解当前软件测试领域的发展趋势,并为实际工作提供参考。
16 1

热门文章

最新文章

推荐镜像

更多