`
wbj0110
  • 浏览: 1610307 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

Web压测工具简介

阅读更多

Web压力测试工具

 

1 http_load

1.1 官方网站

  • 描述:
    • http_load runs multiple http fetches in parallel, to test the throughput of a web server. However unlike most such test clients, it runs in a single process, so it doesn't bog down the client machine. It can be configured to do https fetches as well.
    • You give it a file containing a list of URLs that may be fetched, a flag specifying how to start connections (either by rate or by number of simulated users), and a flag specifying when to quit (either after a given number of fetches or a given elapsed time). There are also optional flags for checksums, throttling, random jitter, and progress reports.
  • 地址:

 

1.2 具体操作及说明

  • 常用样例
http_load -parallel 5 -fetches 1000 urls.txt  
http_load -rate 2 -seconds 300 urls.txt  
  • 样例含义
    • -parallel 简写-p :含义是并发的用户进程数。
    • -fetches 简写-f :含义是总计的访问次数
    • -rate 简写-r :含义是每秒的访问频率
    • -seconds简写-s :含义是总计的访问时间
    • urls.txt 是一个url 列表,每个url 单独的一行;不可以直接跟一个url,有些博客主说的可以跟一个url是错误的说法。
  • 返回结果
http_load -rate 5 -seconds 10 urls  
49 fetches, 2 max parallel, 289884 bytes, in 10.0148 seconds  
5916 mean bytes/connection  
4.89274 fetches/sec, 28945.5 bytes/sec  
msecs/connect: 28.8932 mean, 44.243 max, 24.488 min  
msecs/first-response: 63.5362 mean, 81.624 max, 57.803 min  
HTTP response codes:  
code 200 -- 49
  • 结果含义
    • 49 fetches, 2 max parallel, 289884 bytes, in 10.0148 seconds
    • 说明在上面的测试中运行了49个请求,最大的并发进程数是2,总计传输的数据是289884bytes,运行的时间是10.0148秒

 

    • 5916 mean bytes/connection
    • 说明每一连接平均传输的数据量289884/49=5916

 

    • 4.89274 fetches/sec, 28945.5 bytes/sec
    • 说明每秒的响应请求为4.89274,每秒传递的数据为28945.5 bytes/sec

 

    • msecs/connect: 28.8932 mean, 44.243 max, 24.488 min
    • 说明每连接的平均响应时间是28.8932 msecs,最大的响应时间44.243 msecs,最小的响应时间24.488 msecs

 

    • msecs/first-response: 63.5362 mean, 81.624 max, 57.803 min

 

    • HTTP response codes: code 200 -- 49
    • 说明打开响应页面的类型,如果403的类型过多,那可能要注意是否系统遇到了瓶颈。

 

  • 特殊说明
    • 一般会关注到的指标是fetches/sec、msecs/connect,它们分别对应的常用性能指标参数QPS-每秒响应用户数和response time,每连接响应用户时间。测试的结果主要也是看这两个值。当然仅有这两个指标并不能完成对性能的分析,我们还需要对服务器的cpu、men进行分 析,才能得出结论;
    • 如果要测试HTTPS,需要在编译前指定Makefile中 SSL_TREE 的路径:一般为/usr 或 /usr/local 。

 

2 ab

2.1 官方网站

  • 描述:
    • ab is a tool for benchmarking your Apache Hypertext Transfer Protocol (HTTP) server. It is designed to give you an impression of how your current Apache installation performs. This especially shows you how many requests per second your Apache installation is capable of serving.
  • 地址:

 

2.2 具体操作

  • 常用样例
ab -n 1000 -c 50 http://www.domain.com/myapp.php
  • 样例说明
    • ab将同时向http://www.domain.com/myapp.php发出50个并发请求,共发出1000次。
  • 返回结果
Server Software:        nginx/0.6.25
Server Hostname:        www.domain.com
Server Port:            80

Document Path:          /myapp.php
Document Length:        37899 bytes

Concurrency Level:      100
Time taken for tests:   26.507540 seconds
Complete requests:      2000
Failed requests:        14
   (Connect: 0, Length: 14, Exceptions: 0)
Write errors:           0
Keep-Alive requests:    0
Total transferred:      75931178 bytes
HTML transferred:       75439670 bytes
Requests per second:    75.45 [#/sec] (mean)
Time per request:       1325.377 [ms] (mean)
Time per request:       13.254 [ms] (mean, across all concurrent requests)
Transfer rate:          2797.36 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:       24  640 1310.9     34    7478
Processing:    86  590 2230.9    124   23256
Waiting:        0   55 207.7     41    8292
Total:        112 1230 2501.0    169   23304
    • 部分返回字串省略,这里只表示关键部分;
    • myapp.php每秒钟可以处理的请求数为75.45个
  • 特殊说明
    • 若将请求数增加,看看服务器能否处理更大的压力,需要调节Apache的MaxClients、ThreadsPerChild、MaxThreadsPerChild 等参数,基于httpd.conf中的MPM模块选择。
    • 若本地服务器不是Apache,请使用其它测试方法。

 

2.3 文档说明

0
2
分享到:
评论

相关推荐

    web压测高并发接口测试工具

    一款定制的压测工具, 对webapi webserver 等一些借口进行压测 , 可以自定义并发数量.

    web服务器压测工具

    在IT行业中,Web服务器压测工具是至关重要的,它们用于模拟大量用户同时访问网站或应用,以测试其在高负载下的性能、稳定性和响应速度。本文将深入探讨这个主题,并结合"店铺detail页面性能测试报告.xlsx"这个文件,...

    wrk.zip 压测工具wrk 下载

    **wrk工具详解** wrk是一款高性能的HTTP基准测试工具,由Liz Rice和Matt T. Proud共同开发,主要用于Web服务器的压力测试。它基于LuaJIT脚本语言,可以进行复杂的HTTP请求定制,并能生成详尽的性能报告。在本文中,...

    开源性能压测工具JMeter研究

    #### JMeter工具简介与重要性 Apache JMeter是一款由Apache组织开发的开源压力测试工具,主要用于对Web应用进行功能和性能测试。随着时间的发展,它的应用范围逐渐扩展到了非Web场景。JMeter的核心优势在于其能够...

    jmeter压测工具上传

    【JMeter压测工具详解】 JMeter是一款强大的性能测试工具,由Apache软件基金会开发,主要用于对Web应用程序进行负载和压力测试。它支持多种协议,包括HTTP、HTTPS、FTP、JDBC、SMTP等,使得开发人员和测试人员可以...

    接口性能压测工具——jmeter

    JMeter是Apache组织开发的一款强大的性能测试工具,主要用于模拟大量用户并发访问Web应用或服务,进行接口性能测试、压力测试以及负载测试。在本文中,我们将深入探讨JMeter的使用方法,以及它如何帮助我们进行并发...

    jmeter5.6.3压测工具 jmeter压测工具 jmeter压测工具

    Apache JMeter是一款强大的开源性能测试工具,主要用于模拟大量并发用户对Web应用进行负载和压力测试。JMeter 5.6.3是其一个版本,它提供了丰富的功能,可以帮助开发者、测试人员评估系统的稳定性和性能。以下是对...

    dotnet-一个CSharp写的性能压测工具支持dotnet21

    标题 "dotnet-一个CSharp写的性能压测工具支持dotnet21" 暗示了这个项目是一个基于C#语言开发的性能测试工具,它专门针对.NET Framework 2.1版本进行了优化。C#是一种面向对象的编程语言,由微软开发,常用于构建...

    Jmeter压测工具(中文版)+java1.8.0_Jdk

    Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI ...

    apache-jmeter-5.4.3,接口压测工具jmeter

    Apache JMeter是一款强大的开源接口压测工具,由Apache组织开发并维护,主要应用于对软件进行压力测试,确保系统在高负载下仍能稳定运行。它最初设计用来测试Web应用,但随着时间的发展,JMeter的功能已经扩展到支持...

    Web压力测试工具

    Web压力测试工具是一种专门用于评估和测量Web应用程序性能和稳定性的软件工具。它们的主要目标是模拟大量并发用户访问,以此来测试服务器、网络以及数据库在高负载情况下的表现。这样的测试对于任何规模的Web服务...

    一个.NET 6开发的轻量级Web应用程序压测工具

    【标题】:LoadTestToolbox——基于.NET 6的轻量级Web应用程序压力测试工具 在Web应用程序开发过程中,确保系统在高并发访问下的稳定性和性能是至关重要的。LoadTestToolbox是一个用C#编写的轻量级工具,专为进行...

    jmeter压测工具以及脚本录制工具

    标题中的“jmeter压测工具”是指JMeter作为一款强大的性能测试工具,它可以用来测试各种服务器、网络或对象能处理的负载类型。你可以通过设置不同的参数,如线程数量、循环次数等,来模拟多用户并发访问,观察服务器...

    微软免费压测工具Web Application Stress Tool

    本资源亲测可用,楼主机器为win7 64位,第一次安装过程中报缺少msvcp0.dll,楼主已下好放置压缩包。 安装方法: 1. 先将msvcp50.dll 分别拷贝至 C:\Windows\System32 和C:\Windows\SysWOW64目录下 ...

    jmeter4.0压测工具

    Apache JMeter 4.0是一款强大的性能测试工具,主要用于对Web应用程序进行负载和压力测试。它可以帮助开发者和质量保证团队评估应用在高并发情况下的稳定性和性能,找出可能的瓶颈,确保服务在大规模用户访问下仍能...

    jmeter压测工具环境配套.zip

    《JMeter压测工具环境配套详解》 在软件性能测试领域,Apache JMeter是一款广泛应用的开源压力测试工具,尤其在Web应用的性能评估上表现出色。本文将详细讲解如何搭建基于JMeter的压测环境,并重点介绍与之配套的...

    webtest压力测试软件

    WebTest压力测试软件是一款专为Web应用程序设计的性能和负载测试工具。它允许用户模拟大量并发用户对网站或Web服务进行访问,以检测系统在高负载情况下的性能、稳定性及可扩展性。通过WebTest,我们可以发现潜在的...

    jmeter-压测工具.zip

    《JMeter:强大的Java压测工具》 JMeter,全称为Apache JMeter,是一款由Java开发的开源功能和性能测试工具。它最初设计用于Web应用的负载和性能测试,但随着时间的发展,其功能逐渐扩展,现在可以应用于各种协议和...

    测试web服务器的吞吐量与负载的压测工具http_local

    http_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载。但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把客户机搞死。资源包括在linux下的安装包与整理好的安装教程。

Global site tag (gtag.js) - Google Analytics