GRPC接口的压测工具也很少,找来找去好像也就ghz比较能用。

该工具的官方说明文档:https://ghz.sh/docs/usage
 
举个例子:

ghz -n 100 -c 10 --insecure --proto ./api.proto --call api.HelloWorld.Say  -d '[{"Message":"hello"},{"Message":"hi"}]' 127.0.0.1:9092

结果

image-1691499256260

参数说明:

-n: 请求数
-z: 请求持续时间
-t: 超时时间
-x: 如果在n个请求完成之前达到持续时间,则应用程序停止并退出
-r=0 : 不限制QPS
-d: 调用方法传入的参数,如果传入的是数组,则轮流发
-D: 以文件的形式上传调用方法传入的参数
–async 尽快使请求异步
–connections=5 建立的连接数
–config= JSON文件位置
–proto= proto文件位置
–call= 调用方法
–cacert= 用于验证服务器的受信任根证书的文件
–cert= 给服务器的客户端证书(公钥)文件
–key= 客户端私钥文件
–skipTLS 跳过服务器证书链和主机名的TLS客户端验证
–insecure 使用明文和不安全的连接