2022年1月

一、ab(Apache Bench) 压测
ApacheBench 是 Apache服务器自带的一个web压力测试工具,简称ab。ab又是一个命令行工具,对发起负载的本机要求很低,根据ab命令可以创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问,因此可以用来测试目标服务器的负载压力。总的来说ab工具小巧简单,上手学习较快,可以提供需要的基本性能指标,但是没有图形化结果,不能监控。

语法及参数

Usage: ab [options] [http[s]://]hostname[:port]/path

用法:ab [选项] 地址

选项:

-n requests #执行的请求数,即一共发起多少请求。
-c concurrency #请求并发数。

示例:

ab -c 5 -n a https://www.baidu.com

二、go-stress-testing
go 实现的压测工具,每个用户用一个协程的方式模拟,最大限度的利用 CPU 资源

快速搭建:

clone 项目

git clone https://github.com/link1st/go-stress-testing.git

进入项目目录

cd go-stress-testing

运行

go run main.go -c 5 -n 1 -u https://www.baidu.com

参数说明:

-c 表示并发数
-n 每个并发执行请求的次数,总请求的次数 = 并发数 * 每个并发执行请求的次数
-u 需要压测的地址