您的位置 首页 linux 运维

ab压力测试工具linux

接口压力测试,我们首先要评估好系统压力,然后使用工具检测当前系统情况,是否能满足对应压力的需求。

安装ab压力测试工具

[root@web01 conf.d]# yum install httpd-tools -y

压测工具使用方式

[root@web01 ~]# ab -n 200 -c 2 http://127.0.0.1/

#-n 要执行的请求数
#-c 请求的并发数
#-k 是否开启长连接

ab -n 100000 -c2000 http://wordpress.baimei.com/index.html (必须加上路径)

配置Nginx静态网站与tomcat动态网站环境

 

#配置nginx
[root@lb01 conf.d]# cat try.conf 
server {
    listen 80;
    server_name try.baimei.com;

    location / {
    root /code;
        try_files $uri $uri/ @java;
    index index.jsp index.html;
    }

    location @java {
    proxy_pass http://172.16.1.8:8080;
    }
}

#配置nginx使用的静态页面
[root@lb01 conf.d]# echo "nginx ab" > /code/ab.html

#配置tomcat使用的静态页面
[root@web02 ~]# wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-9/v9.0.16/bin/apache-tomcat-9.0.16.tar.gz
[root@web02 ~]# tar xf apache-tomcat-9.0.16.tar.gz
[root@web02 ~]# cd /usr/share/tomcat/webapps/ROOT
[root@web02 ROOT]# echo "baimei_tomcat" > tomcat.html

#压测工具测试nginx处理静态资源

ab -n 100000 -c2000 http://wordpress.baimei.com/index.html

 

#压测工具测试tomcat处理静态资源

[root@lb01 conf.d]# ab -n 10000 -c 200 http://try.baimei.com/tomcat.html

Server Software:        nginx/1.14.2
Server Hostname:        try.baimei.com
Server Port:            80

Document Path:          /tomcat.html
Document Length:        13 bytes

Concurrency Level:      200
Time taken for tests:   4.956 seconds
Complete requests:      10000
Failed requests:        0
Write errors:           0
Total transferred:      2510000 bytes
HTML transferred:       130000 bytes
Requests per second:    2017.78 [#/sec] (mean)
Time per request:       99.119 [ms] (mean)
Time per request:       0.496 [ms] (mean, across all concurrent requests)
Transfer rate:          494.59 [Kbytes/sec] received
Server Software:        nginx/1.15.3            #测试服务器的名字
Server Hostname:        localhost                #请求的URL主机名
Server Port:            80                          #请求端口

Document Path:          /                        #请求路径
Document Length:        613 bytes                  #HTTP响应数据的正文长度

Concurrency Level:      500                    #并发用户数,这是我们设置的参数之一
Time taken for tests:   0.407 seconds         #所有这些请求被处理完成所花费的总时间 单位秒
Complete requests:      5000                  #总请求数量,这是我们设置的参数之一
Failed requests:        0                           #表示失败的请求数量
Write errors:           0                            
Total transferred:      4230000 bytes       #所有请求的响应数据长度总和。包括每个HTTP响应数据的头信息和正文数据的长度
HTML transferred:       3065000 bytes     #所有请求的响应数据中正文数据的总和,也就是减去了Total transferred中HTTP响应数据中的头信息的长度
Requests per second:    12284.44 [#/sec] (mean)    #吞吐量,计算公式:Complete requests/Time taken for tests  总请求数/处理完成这些请求数所花费的时间
Time per request:       40.702 [ms] (mean)             #用户平均请求等待时间,计算公式:Time token for tests/(Complete requests/Concurrency Level)。处理完成所有请求数所花费的时间/(总请求数/并发用户数)     
Time per request:       0.081 [ms] (mean, across all concurrent requests)    #服务器平均请求等待时间,计算公式:Time taken for tests/Complete requests,正好是吞吐率的倒数。也可以这么统计:Time per request/Concurrency Level
Transfer rate:          10149.06 [Kbytes/sec] received。  #表示这些请求在单位时间内从服务器获取的数据长度,计算公式:Total trnasferred/ Time taken for tests,这个统计很好的说明服务器的处理能力达到极限时,其出口宽带的需求量。

欢迎来撩 : 汇总all

白眉大叔

关于白眉大叔linux云计算: 白眉大叔

热门文章