发现项目的内存占用过多,想找找原因 2018-08-09
使用 pprof
在程序代码里加上:
package main
import _ "net/http/pprof"
import "net/http"
func main() {
go func() {
http.ListenAndServe("0.0.0.0:8086", nil)
}()
// 这里写你的程序 or 代码入口
}
然后编译运行你的程序(最好是服务型的,就是一直运行那种,比如web程序,server程序)
打开 http://localhost:8086/debug/pprof
就是分析的数据
打开个终端,查看内存分析,输入如下:
go tool pprof http://localhost:8086/debug/pprof/heap
进入 pprof 模式
在 (pprof)
模式下,可以输入 help
查看输出的方式:
比如保存为图片:
(pprof) png > /someDir
(pprof) 是命令提示符
网友评论