这个项目能做什么

oha 是一款受 rakyll/hey 启发而开发的命令行 HTTP 负载生成器。它使用 Rust 语言开发,基于 tokio 运行时和 ratatui 库,旨在提供一个美观的实时终端用户界面 (TUI),用于可视化请求负载和性能指标。 核心功能包括: - 负载生成:支持指定请求数量、并发连接数以及测试持续时间。 - 协议支持:支持 HTTP/1、HTTP/2 以及实验性的 HTTP/3。 - 流量控制:具备速率限制 (QPS)、突发延迟/速率设置以及延迟修正,以避免协调遗漏 (coordinated omission) 问题。 - 灵活的目标设定:可以从文件中读取 URL,或使用正则表达式生成随机 URL。 - 请求自定义:支持自定义 HTTP 方法、请求头、代理设置、基础身份验证、AWS SigV4 签名以及请求体(通过字符串或文件)。 - 输出格式:结果可以输出为文本、JSON 或 CSV 格式,并可写入文件或 SQLite 数据库。 - 连接性:支持 IPv4、IPv6、Unix sockets 以及自定义 TLS 证书验证。