ab(Apache Bench) 、go-stress-testing 压测
一、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 需要压测的地址