压力测试

# 常用指标

服务运行在线上是否稳定需要看几个指标,你可以根据你系统的具体业务场景着重来看某个指标。以下是整理的一些常用的指标。

##吞吐率(Requests per second)

概念:服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请求数。某个并发用户数下单位时间内能处理的最大请求数,称之为最大吞吐率。

计算公式:总请求数 / 处理完成这些请求数所花费的时间,即

Request per second = Complete requests / Time taken for tests

##并发连接数(The number of concurrent connections)

概念:某个时刻服务器所接受的请求数目,简单的讲,就是一个会话。

##并发用户数(The number of concurrent users,Concurrency Level)

概念:要注意区分这个概念和并发连接数之间的区别,一个用户可能同时会产生多个会话,也即连接数。

##用户平均请求等待时间(Time per request)

计算公式:处理完成所有请求数所花费的时间/ (总请求数 / 并发用户数),即

Time per request = Time taken for tests /( Complete requests / Concurrency Level)

##服务器平均请求等待时间(Time per request: across all concurrent requests)

计算公式:处理完成所有请求数所花费的时间 / 总请求数,即

Time taken for / testsComplete requests

可以看到,它是吞吐率的倒数。

同时,它也=用户平均请求等待时间/并发用户数,即

Time per request / Concurrency Level

#ab压力测试工具

有了指标其实咱们就知道测试的方向了,但是具体怎么测就需要一个比较好用并且通用的工具了,接下来就是我要说的测试工具,比较通用,基本上通过命令就可以安装,window也可以使用。

## 安装ab工具

```

yum install httpd-tools

```

比较简单,通过命令直接安装

## ab常用参数

这里需要说下,咱们就普及一下常用就参数就够了,需求更高端的方式,安装好后直接执行命令ab就会有所有的选项了,到时候自己看下就Ok了。

参数说明

-n:执行的请求个数,默认时执行一个请求

-c:一次产生的请求个数,即并发个数

-p:模拟post请求,文件格式为gid=2&status=1,配合-T使用

-T:post数据所使用的Content-Type头信息,如果-T 'application/x-www-form-urlencoded'

哈哈,来个栗子补补肾

### GET请求demo

```

ab -c 10 -n 10 http://www.baidu.com/s?wd=压测工具

```

这个太简单,没啥挑战性。

###POST请求

在当前目录下创建一个文件post.txt

编辑文件post.txt写入

id=4&status=1

相当于post传递id,status参数

竟然需要文件配合了,复杂点了哈

```

ab -n 100  -c 10 -p 'post.txt' -T 'application/x-www-form-urlencoded' 'http://baidu.com'

```

## 总结一下

咳咳,到了总结的时候了,压力测试其实还是比较复杂的,我只是一个比较简单的方式说了出来,假如要是深入了解可以调研一下国内用的比较多的压测工具,看看都需要测试哪些方面。

核心其实对应的就是指标。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 写在前面 在学习ab工具之前,我们需了解几个关于压力测试的概念 吞吐率(Requests per second)概...
    橙子酱阅读 241,366评论 13 190
  • 基本使用 ab就是Apache Benchmark的缩写,顾名思义它是Apache组织开发的一款web压力测试工具...
    水车阅读 13,170评论 0 5
  • 当你使用PHP(或其他编程语言)完成一个web程序的开发,并且web程序在Apache服务器上正常运行的时候,你有...
    零一间阅读 19,825评论 0 14
  • 让终端好看好用,才能提高我们的效率,顺便提高写代码的逼格,我们的目标:透明的悬浮终端效果,如下图: 安装iTerm...
    24K大金牙阅读 13,770评论 1 4
  • ——致新年 福 ——致新年 头上的天 蓝了 地上的草 绿了 眼泪 欢笑 梦想 纺织成一捆捆多情的诗 你的脸...
    老罗xt阅读 402评论 1 2