压力测试

项目:

https://github.com/nightlegend/stress_testing

介绍:


项目是用golang 实现,引用vegeta 的lib来实现压力测试,其实vegeta部分已经实现的功能比较完善了,但是上手还是有点难度的,在实际使用中,包装一层,这样使用起来比较简单,对有这方面的需求但是不想花太多精力,可以考虑。

项目内容

1. 结构


--conf
--conf.yml
--loadConf.go
--lib
--stressGet.go
--stressPost.go
--Dockerfile
--main.go
--docker-compose.yml
--README.md


main.go: 入口
conf: 配置项(压力测试需要的一些参数)
lib:压力测试的两个主要的方法GET 和POST

2. 参数说明


host: localhost //项目访问的host
port: 8012 //项目访问的端口
times: 4 //压力测试持续请求时间
rate: 4 //每秒请求量
resultPath: D:/SelfStudy/GoProject/data/ //结果保存路径
testResulName: testing //压力测试结果保存文件名

requestType: get //当前压力测试类型,目前只支持(GET ,POST)
requestPath: / //压力测试的对象
requestData: message=hello world!! //需要传输的data

3. 启动方式

a. go run

此种方式比较依赖环境,所以必须先把环境搭建好,然后才可以测试。

b. docker(推荐)

Docker 方式比较简单,对环境的依赖比较小,只需装一个docker,然后即可。测试的时候只需要更改配置文件即可进行测试。

4. 测试结果


与时间相关部分单位为NS(纳秒),与大小相关的单位是B(字节)

你可能感兴趣的:(压力测试)