【Rust日报】2021-12-17 Goose: 由 locust 框架启发的性能测试框架
2023-04-18 16:06:45 时间
Goose: 由 locust 框架启发的性能测试框架
熟悉小编的朋友知道小编最近又转到了测试岗位的工作,在进行性能测试的时候由于 Jmeter 多线程模型占用了极大量的资源才能 打出并发量比较高的测试压力,于是找到了 Python 的 Locust(蝗虫)框架,用起来还算顺手,但资源占用对于在办公室里的笔记本电脑来说实在是弱了些。另外,由于 Python 的 GIL 原因,使得Locust 在单机上只能使用单核单进程,要想利用多核只能开启 Locust 的分布式配置
于是,在 @PotatoTooLarge 的指点下,发现 Goose这个 Rust 的框架,它由如下特点:
- 文档齐全,一如 Rust 社区的作用
- 基于 Reqwest,可以异步发起请求
- Locust 报告里有的指标,Goose 的报告里面基本都有
- 资源消耗极小,适合在没有资源的情况下发起测试压力
但是,该框架仍有以下不足:
- 没有配置文件(以及profile)
- 没有 locust 的实时监控 WebUI
https://github.com/tag1consulting/goose
tokio-rs/console 发布 v0.1
该仓库下包含了一个 TurboWish/tokio-console 的实现,它时一个是分析与调试的工具,为异步 Rust 程序设计。分析套件包括几个组件:
- 一个 wire protocol,为了串流来自被分析应用到分析工具的分析数据。这个格式是用了 gPRC 和 protocol buffer 定义的,为了高效地在 wire 上传送,以及为了保证不同数据生产者和消费者之间的互操作性。
console-api
库包含了 wire format 的自动生成代码,用的是 tonic gPRC。此外,使用其他 gPRC 代码生成器的项目(包括使用其他语言实现的!)能够自行依赖 protobuf 定义。 - 从进程收集分析数据并通过 wire format 暴露它的instrumentation。仓库中的
console-subscriber
库包含了作为tracing-subscriber 层的 instrumentation 端API,给用 Tokio 和 tracing 的项目使用。 - 用来展现和探索分析数据的工具,使用 console wire protocol 实现成了gPRC 客户端。
console
库实现了一个非交互式的命令行工具来消费这些山上,但是其他实现,例如图形化的或者基于web 的工具,也是可用的。
相关文章
- Linux极简入门系列(六):其它补充
- makefile
- LOJ 3276 JOISC 2020 Day2 遗迹 题解 (计数DP)
- 4-Ribbon负载均衡
- Cesium 几何体贴模型 sampleHeight(二十二)
- k8s之list-watch机制、节点调度以及亲和性
- 记一次CPU占用持续上升问题排查(Nacos动态路由引起)
- 你有“ChatGPT综合征”吗:想搞钱,或是失业焦虑?
- URLDNS链分析
- Spring中Bean的加载方式~
- Adobe Lightroom 键盘快捷键_开发速查表分享
- 1000亿数据、30W级qps如何架构?来一个天花板案例
- 3-Eureka注册中心
- 还不知道线程池的好处?快来了解一下
- 韦达定理
- 一款超级给力的弱网测试神器—Qnet(附视频)
- 移动计算入门教程_编程入门自学教程_菜鸟教程-免费教程分享
- korean doll likeness模型|Japanese-doll-likeness模型获取及使用
- 一招搞定孩子不吃饭问题
- Kubernetes(K8S)应用案例