测试部门提供GHZ工具来辅助实现gRPC接口性能测试;相比较于市面上的其他工具,GHZ的好处是只需要提供proto文件就可以发起测试了,不需要额外编写客户端与压测程序。
1,通过http://help.j.snowballfinance.com/jmp_apply/add 申请压测服务器权限:10.10.50.2,原因写gRPC压测需要。
2,跳转到目录:/opt/tools/ghz/,进入projects目录,创建自己的压测文件夹目录。
3,将压测需要的proto文件或者protoset文件存在压测文件夹目录下。
4,编写sh脚本,用以执行压测。
/opt/tools/ghz/ghz --config [配置文件] -D [参数文件] [压测目标主机与端口],参考如下示例。
5,编写配置文件。
{
“proto”: “”, #proto文件路径
“call”: “”, #调用的方法名称
“skipTLS”: true, #忽略客户端TLS安全校验
“insecure”: true, #非安全明文传输
“total”: 200, #总共请求的次数
“concurrency”: 1, #并发数
“host”: “XX.XX.XX.XX:XXXX” #主机与端口
}
参考如下示例:
6,编写参数文件。
将请求数据以JSON格式写在参数文件中。
注意,当格式为JSONArray时候,GHZ将会循环遍历该文件,每次取一个节点的数据来请求。我们采用这种方式来构建混合压测。
参考示例如下。
7,执行压测。
终端输入 ./[sh脚本] ./[参数文件],gRPC压测立即开始,测试完成后可以看到响应压测结果。
附GHZ使用说明:
usage: ghz [<flags<