• apache的ab命令做压力测试


    1、命令格式

    ab命令放在apache目录bin目录下面,使用方法如下

    ./ab -n 3000 -c 3000 http://www.test.com/
    其中-n代表每次并发量,-c代表总共发送的数量
     
    2、测试结果分析
    [root@Svr107 bin]# ./ab -n 3000 -c 3000 http://www.test.com/  
    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 www.twioo.com (be patient)
    Completed 300 requests
    Completed 600 requests
    Completed 900 requests
    Completed 1200 requests
    Completed 1500 requests
    Completed 1800 requests
    Completed 2100 requests
    Completed 2400 requests
    Completed 2700 requests
    Completed 3000 requests
    Finished 3000 requests
     
     
    Server Software:        nginx/0.7.65
    Server Hostname:        www.test.com
    Server Port:            80
     
    Document Path:          /  ###请求的资源
    Document Length:        50679 bytes  ###文档返回的长度,不包括相应头
     
    Concurrency Level:      3000   ###并发个数
    Time taken for tests:   30.449 seconds   ###总请求时间
    Complete requests:      3000     ###总请求数
    Failed requests:        0     ###失败的请求数
    Write errors:           0
    Total transferred:      152745000 bytes
    HTML transferred:       152037000 bytes
    Requests per second:    98.52 [#/sec] (mean)      ###平均每秒的请求数
    Time per request:       30449.217 [ms] (mean)     ###平均每个请求消耗的时间
    Time per request:       10.150 [ms] (mean, across all concurrent requests)  ###上面的请求除以并发数
    Transfer rate:          4898.81 [Kbytes/sec] received   ###传输速率
     
    Connection Times (ms)
                  min  mean[+/-sd] median   max
    Connect:        2   54  27.1     55      98
    Processing:    51 8452 5196.8   7748   30361
    Waiting:       50 6539 5432.8   6451   30064
    Total:         54 8506 5210.5   7778   30436
     
    Percentage of the requests served within a certain time (ms)
      50%   7778   ###50%的请求都在7778Ms内完成
      66%  11059
      75%  11888
      80%  12207
      90%  13806
      95%  18520
      98%  24232
      99%  24559
     100%  30436 (longest request)
     
     
    3、如果用ab访问的是他本机上的web服务器,使用127.0.0.1或者是web服务器上的网卡IP地址,这个是不走网络设备的,可以忽略网络消耗
     
     
    4、ab使用的一些问题
    a、ab命令在一般系统上面做测试时候,一般并发不能超过1024个,其实是因为因为系统限制每个进程打开的最大文件数为1024,可以用ulimit -a来查看
    open files                      (-n) 65536  ##这个我系统已经修改过
    b、-n 可以指定最大请求数,但是不能超过50000个
    c、-v n   当n>=2 时,可以显示发送的http请求头,和响应的http头及内容,压力测试时不要这么做
    [root@Svr107 bin]# ./ab -n 1 -c 1 -v 2  http://www.test.com/
    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 www.test.com (be patient)...INFO: POST header == 
    ---
    GET / HTTP/1.0
    Host: www.test.com
    User-Agent: ApacheBench/2.3
    Accept: */*
     
     
    ---
    LOG: header received:
    HTTP/1.1 200 OK
    Server: nginx/0.7.65
    Date: Thu, 01 Dec 2011 13:08:16 GMT
    Content-Type: text/html
    Connection: close
    Vary: Accept-Encoding
    Content-Length: 50515
    Last-Modified: Thu, 01 Dec 2011 13:08:04 GMT
    Accept-Ranges: bytes
     
    <!DOCTYPE html>
    <html>
    <head>
            <meta charset="utf-8" />
            <title>微博,财经微博,理财微博社区-专业投资理财微博社区-推哦网</title>
            <meta http-equiv="x-ua-compatible" content="ie=7" />
            <meta name="keywords" content="股票证券分析网,微博网站,个人理财网站,财经微博,投资理财论坛,理财微博网站"/>
            <meta name="description" content="推哦网是一个开放的,基于用户关系的投资理财微博网站,我们采用流行的微博模式,让信息和分享更快速更高效的传播,致力于打造一个简单,分享,交流,创造,共赢的金融环境"/>
            <link rel="stylesheet" type="text/css" href="http://www.test.com/css/global.css" media="screen" />
            <link rel="stylesheet" type="text/css" href="http://www.test.com/css/base.css" media="screen"/>
            <link rel="stylesheet" type="text/css" href="http://www.test.com/css/index.css" media="screen"/>
            <link rel="stylesheet" type="text/css" href="http://www.test.com/css/skin/vista/ymPrompt.css" />
            <script src="http://www.test.com/include/javascript/ymPrompt.js" type="text/javascript"></script>
            <script src="http://www.test.com/include/javascript/miniblog.js" type="text/javascript"></script>
            <sc
    ..done
     
     
    Server Software:        nginx/0.7.65
    Server Hostname:        www.test.com
    Server Port:            80
     
    Document Path:          /
    Document Length:        50515 bytes
     
    Concurrency Level:      1
    Time taken for tests:   0.006 seconds
    Complete requests:      1
    Failed requests:        0
    Write errors:           0
    Total transferred:      50751 bytes
    HTML transferred:       50515 bytes
    Requests per second:    176.27 [#/sec] (mean)
    Time per request:       5.673 [ms] (mean)
    Time per request:       5.673 [ms] (mean, across all concurrent requests)
    Transfer rate:          8736.39 [Kbytes/sec] received
     
    Connection Times (ms)
                  min  mean[+/-sd] median   max
    Connect:        0    0   0.0      0       0
    Processing:     5    5   0.0      5       5
    Waiting:        1    1   0.0      1       1
    Total:          6    6   0.0      6       6
     
    在做压力测试的时候,一般情况下压力测试客户端接收到的数据量一定会远大于发送出去的数据量
  • 相关阅读:
    从输入url到页面加载完成都发生了什么?
    JS 获取和监听屏幕方向变化(portrait / landscape)
    圣杯布局的几种情况
    闭包的使用 — 点击列表项输出项目索引
    论文笔记:dropout
    论文笔记:蒸馏网络(Distilling the Knowledge in Neural Network)
    ng-深度学习-课程笔记-17: 序列模型和注意力机制(Week3)
    ng-深度学习-课程笔记-16: 自然语言处理与词嵌入(Week2)
    ng-深度学习-课程笔记-15: 循环序列模型(Week1)
    Ubuntu安装dlib后import出现libstdc++.so.6: version `GLIBCXX_3.4.21' not found
  • 原文地址:https://www.cnblogs.com/lmxs/p/3070594.html
Copyright © 2020-2023  润新知