常用工具和使用汇总

2022-06-30 10:35:12 浏览数 (1)

背景

记录个人在开发测试中常用的一些工具和命令,不知道的时候方便回来查看。

1. 性能测试工具

ab测试工具(http)

安装

代码语言:txt复制
yum install httpd

使用

代码语言:txt复制
ab -c100 -n1000  "http://127.0.0.1:61001/dmp/get_tag_deviceid_md5?deviceid_md5=d9c1f0c52061443281d79c1407aa635d"

报告说明

image.pngimage.png

主要关注压测的QPS, 平均耗时,以及时延分布情况

grpc测试工具grpcurl

代码语言:txt复制
go get github.com/fullstorydev/grpcurl
go install github.com/fullstorydev/grpcurl/cmd/grpcurl

使用命令

代码语言:shell复制
grpcurl -plaintext -d '{"name":"Go"}' localhost:8081 proto.TagService.GetTagList

ghz压测工具(grpc)

仓库地址: https://github.com/bojand/ghz

官网: https://ghz.sh/

安装&使用

代码语言:txt复制
# 如果是mac直接用
brew install ghz

# 也可以选择自己编译安装
git clone https://github.com/bojand/ghz
cd ghz
make build


# 发测试请求样例1
ghz --insecure --async    
--proto /protos/helloworld.proto    
--call helloworld.Greeter/SayHello    
-c 10 -n 10000 --rps 200    
-d '{"name":"{{.WorkerID}}"}'0.0.0.0:50051

# 发测试请求样例2
ghz --skipTLS --insecure --protoset 
/Users/guirong/go/src/ghz_demo/proto/api.bundle.protoset 
--call proto.TagService.GetTagList -m '{"name": "Go"}' 
-c 100 -n 1000 localhost:8081 -O html -o test.html

报告效果

命令行命令行
webweb

2. go的pprof graphviz 性能调优工具

2.1 pprof 为go自带工具无需额外安装

使用

代码语言:txt复制
# 查看全局的监控信息
go tool pprof 'http://localhost:8081/debug/pprof/?debug=1'

# 查看goroutine的监控信息
go tool pprof 'localhost:8081/debug/pprof/goroutine?debug=1'

报告说明

image.pngimage.png
image.pngimage.png

2.2 graphviz 火焰图

安装

代码语言:txt复制
yum install graphviz

使用

代码语言:txt复制
 go tool pprof -http=:8080 'http://xxx:xxx/debug/pprof/profile?debug=1'

报告说明

image.pngimage.png

通过火焰图找出程序的瓶颈,并进行优化。

3. YAPI 接口管理平台

安装

代码语言:txt复制
# 前提: 需要安装docker. 如果没有安装docker可以见本人 docker 博文
## 1.启动 MongoDB 
docker run -d --name mongo-yapi mongo

##2.获取 Yapi 镜像,版本信息可在 阿里云镜像仓库查看 
docker pull registry.cn-hangzhou.aliyuncs.com/anoy/yapi

## 3.初始化 Yapi 数据库索引及管理员账号(初始化管理员账号成功,账号名:"admin@admin.com",密码:"ymfe.org")
## 初始化成功后, 会在末尾显示初始化后的账号密码信息
docker run -it --rm 
 --link mongo-yapi:mongo 
 --entrypoint npm 
 --workdir /api/vendors 
 registry.cn-hangzhou.aliyuncs.com/anoy/yapi 
 run install-server

## 4.启动 Yapi 服务
docker run -d 
 --name yapi 
 --link mongo-yapi:mongo 
 --workdir /api/vendors 
 -p 3000:3000 
 registry.cn-hangzhou.aliyuncs.com/anoy/yapi 
 server/app.js

## 5.打开阿里云服务器 3000 的端口
如果自己的云服务器的安全组/防火墙设置了禁止额外的端口访问, 需要在安全组/防火墙中放开3000端口

## 6. 登陆 
访问 http://ip:3000 登录账号 admin@admin.com,密码 ymfe.org

## 官方使用文档地址: 
https://hellosean1025.github.io/yapi/documents/index.html

使用docker进行安装,也可以采用官方推荐方案,项目仓库:[https://github.com/YMFE/yapi](https://github.com/YMFE/yapi)

我使用的是[https://github.com/fjc0k/docker-YApi](https://github.com/fjc0k/docker-YApi)进行快速安装。

最终效果

image.pngimage.png

0 人点赞