HTTP/1.1、HTTP/2、HTTP/3、WebSocket。安装很简单,只需一行命令:
go install github.com/go-dev-frame/sponge/cmd/sponge@latest
安装之后请看 perftest 的 使用指南。
单机压测执行命令示例:
# 指定总请求数
sponge perftest http --total=100000 --url=http://localhost:8080/user/1
# 指定压测时长
sponge perftest http --duration=30s --url=http://localhost:8080/user/1
当单机压测的能力不足时,使用集群压测,只需运行:
sponge perftest collector
然后在多台机器上执行:
sponge perftest agent --config=agent.yml
Collector 会自动汇总所有 Agent 的性能数据,并在 Web UI 实时展示,如下图所示:
对于大规模测试,手动管理节点是不现实的,因此提供了完整的 Kubernetes 部署脚本 perftest-deployment.yml,直接:
kubectl apply -f perftest-deployment.yml
即可启动 Collector + Agent 集群压测。
想测试消息推送、IM 、通知系统性能?示例:
sponge perftest websocket --worker=100 --duration=1m \
--body='{"msg":"hello"}' --url=ws://localhost:8080/ws
QPS 、收发延迟、消息统计全都有。
perftest 是一款“从单机到集群”的压测工具,不花时间配置、不依赖外部组件,非常适合开发阶段接口调优、性能回归、系统瓶颈排查和高并发预演。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.