GRPC 压测工具 ghz

一、下载安装
https://github.com/bojand/ghz...
官方文档: https://ghz.sh/docs/usage
大致可以分为三类参数:
基本参数
负载参数
并发参数
基本参数

--config:指定配置文件位置--proto:指定 proto 文件位置,会从 proto 文件中获取相关信息--call:指定调用的方法。 具体格式为包名.服务名.方法名 如:--call helloworld.Greeter.SayHello-c:并发请求数-n:最大请求数,达到后则结束测试-d:请求参数 JSON格式,如-d '{"name":"Bob"}' -D:以文件方式指定请求参数,JSON文件位置 如-D ./file.json-o:输出路径 默认输出到 stdout-O/--format:输出格式,有多种格式可选便于查看的:csv、json、pretty、html: 便于入库的:influx-summary、influx-details:满足InfluxDB line-protocol 格式的输出 以上就是相关的基本参数,有了这些参数基本可以进行测试了。

配置文件:
所有参数都可以通过配置文件来指定,这也是比较推荐的用法。
{ "proto": "/path/to/greeter.proto", "call": "helloworld.Greeter.SayHello", "total": 2000, "concurrency": 50, "data": { "name": "Joe" }, "metadata": { "foo": "bar", "trace_id": "{{.RequestNumber}}", "timestamp": "{{.TimestampUnix}}" }, "import-paths": [ "/path/to/protos" ], "max-duration": "10s", "host": "0.0.0.0:50051" }

ghz --config ./ghz.json
使用方式:
ghz -c 10 -n 1000 \ --insecure \ --proto ./hello_world.proto \ --call helloworld.Greeter.SayHello \ -d '{"name":"Joe"}' \ 0.0.0.0:50051

【GRPC 压测工具 ghz】参考: https://www.lixueduan.com/pos...

    推荐阅读