linux服务器上使用ab压测工具

1.ab是什么?linux

ab是apache自带的一个压测工具。它的原理是ab命令会建立多个并发访问线程,模拟多个访问者同时对某一URL地址进行访问。它的测试目标是基于URL的,所以,它既能够用来测试apache的负载压力,也能够测试nginx、lighthttp、tomcat、IIS等其它Web服务器的压力。nginx

2.为何要使用ab?apache

我作的是游戏支付平台,要求必定要稳定,并发大的时候不能挂,因此上线以前要使用压测工具压测,看看接口的峰值等。json

3.linux上安装ab后端

linux上安装ab很是简单,步骤以下:tomcat

1.我是安装在 /usr/local 下,新建一个文件夹 mkdir ab服务器

2.开始安装 yum -y install httpd-tools并发

3.测试是否安装成功 ab -Vapp

4.ab经常使用的参数介绍工具

-n :总共的请求执行数,缺省是1;

-c: 并发数,缺省是1;

-t:测试所进行的总时间,秒为单位,缺省50000s

-p:POST时的数据文件

-T:跟_p一块儿使用,主要post请求时请求头的信息

5.开始测试

我此次是测试nginx的性能。由于我是post请求,要有请求体、请求头的信息。后端使用了@RequestBody,因此请求体的内容必须是json格式。

下面开始介绍用ab压测的时候post请求的用法:

1.首先在安装路径下,新建一个文件 post.txt,命令以下:

2.而后打开post.txt文件,将本身的请求体的信息放进去:

3.最重要的命令来了,注意看:

ab -n 100 -c 10 -p post.txt -T 'application/json' 服务器地址:端口号/test.json

这个表示同时处理10个请求并运行100次这个test.json

解释一下 -n是指总共100个请求   -c是指并发数10 -p是指post请求请求体内容 -T是指请求体信息 后面的就是本身的请求地址

4.执行结果

比较重要的参数详细解释一下:

//你们最关心的指标之一,至关于 LR 中的 每秒事务数 ,后面括号中的 mean 表示这是一个平均值

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


//你们最关心的指标之二,至关于 LR 中的 平均事务响应时间 ,后面括号中的 mean 表示这是一个平均值


Time per request: 8188.731 [ms] (mean)


//每一个请求实际运行时间的平均值

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

相关文章
相关标签/搜索