golang 性能测试pprof
golang 性能测试包是位于 net/http 包下的 pprof,其相关介绍可以参看具体的 官方文档
有关 golang 性能测试使用特别简单,在 main 包中的引包位置直接引入:
1 | import _ "net/http/pprof" |
之后,在 main 函数中增加以下代码行即可:
1 2 3 | go func () { log.Println(http.ListenAndServe( "0.0.0.0:6060" , nil)) }() |
至此,通过以上两步操作就完成了 pprof 的植入,即我们就可以进行相关的性能测试了。
使用命令:
go tool pprof http://localhost:6060/debug/pprof/heap 查看堆栈
输入 web 命令后会自动弹出网页展示对应的 svg 图表,对应的图表显示如下所示:
当程序运行起来之后,对应的端口 6060 已经处于监听状态,故我们也可以通过浏览器直接访问:http://www.localhost:6060
具体如何查看 CPU、Memory、I/O、定时刷新 等相关信息,可以到 对应官方文档 查看使用。
具体 svg 图是如何生成的,如何通过代码生成对应图表请参看我的另外一篇博客: graphviz 程序生成多种类型图表详解
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何在 .NET 中 使用 ANTLR4
· 后端思维之高并发处理方案
· 理解Rust引用及其生命周期标识(下)
· 从二进制到误差:逐行拆解C语言浮点运算中的4008175468544之谜
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 后端思维之高并发处理方案
· 千万级大表的优化技巧
· 在 VS Code 中,一键安装 MCP Server!
· 想让你多爱自己一些的开源计时器
· 10年+ .NET Coder 心语 ── 继承的思维:从思维模式到架构设计的深度解析