golang安装go-torch火焰图
安装
go-torch 是一个用于分析 Go 程序性能的工具,它可以生成火焰图(Flame Graphs)来帮助分析 CPU 的使用情况。
要安装 go-torch,你需要先安装 Go 语言环境,并设置好 GOPATH 环境变量。然后使用 go get 命令来安装 go-torch。
以下是安装 go-torch 的步骤:
- 安装go-torch
go get github.com/uber/go-torch
或者使用install安装
go install github.com/uber/go-torch@latest
- 安装FlameGraph
cd $GOPATH && git clone https://github.com/brendangregg/FlameGraph.git
设置路径【这步一定要设置,生成火焰图时会用到】
export PATH=$PATH:$GOPATH/FlameGraph
- 安装graphviz (CentOS, Redhat)
yum install graphviz
- 生成火焰图
压测的时候,运行go-torch,会把缓存的数据输出到文件中
$ go-torch -u http://127.0.0.1:9999
INFO[09:34:25] Run pprof command: go tool pprof -raw -seconds 30 http://127.0.0.1:9999/debug/pprof/profile
INFO[09:34:55] Writing svg to torch.svg
常用操作
- 用 -u 分析CPU使用情况
go-torch -u http://127.0.0.1:9999
- 用 -alloc_space 来分析内存的临时使用情况
go-torch -alloc_space http://127.0.0.1:9999/debug/pprof/heap --colors=mem
- 用 -inuse_space 来分析程序常驻内存的占用情况
go-torch -inuse_space http://127.0.0.1:9999/debug/pprof/heap --colors=mem
- 画出内存分配图
go tool pprof -alloc_space -cum -svg http://127.0.0.1:9999/debug/pprof/heap > heap.svg
内存使用火焰图
内存分配图
Do not communicate by sharing memory; instead, share memory by communicating.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)