IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> ghz grpc 压力测试使用 -> 正文阅读

[开发测试]ghz grpc 压力测试使用

grpc压力测试

通过ghz来对grpc接口进行压力测.

ghz是通过golang开发的针对grpc的压测工具,ghz基于proto或者protoset来发起grpc调用,类似常规的测试(ABtest),可以指定并发量,请求总数,请求频率。

并且能够输出html,csv,json,prometheus等让我们更加直观的看到接口接口性能情况.

链接

官方文档 github

windows安装以及踩坑

用下载好的zip也可以去 下载地址 不同的版本,我目前只在windows上使用.

使用protoc

ghz可以通过proto文件也可以通过protoset调用grpc服务. 我个人推荐使用protoset,因为提前使用protoc编译好了的protoset文件可以让ghz调用不用考虑到proto文件的一些引用问题.

 protoc --include_imports -I . --descriptor_set_out=bundle.protoset *.proto

注意使用 –include_imports 不然很多依赖的proto不会编译进来
在这里插入图片描述
在这里插入图片描述

使用ghz执行测试

之后我们就可以使用ghz

解压配置并且配置环境变量

解压
在这里插入图片描述

基于protoset执行测试

简单的调用

ghz --insecure   --protoset bundle.protoset   --call Service.method  127.0.0.1:7999

调用

常用指令

   --skipFirst  grpc最好第一个跳过,因为比较慢
   --insecure  使用文本和非安全的连接
   -r|--rps=0  rps的速率限制,默认没有限制
   -c|--concurrency  指定并发数量 默认50
   -n| --total  一共请求的数量 默认200
   -d|--data  通过json的方式发送请求报文
   -D|--data-file  指定json文件调用数据
   -o|--output 输出路径
   -O|--format 输出的格式 summary, csv, json, pretty, html, influx-summary, influx-details

调用相关:
   --protoset 指定protoset文件
   -i | --import-paths 指定proto文件的路径(用protoset不需要使用)
   --call 指点调用的方法(package.Service/Method' 或者 'package.Service.Method' )

输出结果

  • count - 包含成功和失败的全部请求数量.
  • total - 从开始到结束的全部时间.
  • slowest - 最慢的请求
  • fastest - 最快的请求
  • average - 平均请求数量
  • requests/sec - rps

通过-O 输出html等

ghz --insecure -o test.html -O html  --protoset bundle.protoset   --call Service.method 127.0.0.1:7999

生成的html

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2022-03-06 13:28:06  更:2022-03-06 13:28:41 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 2:42:57-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码