golang pprof 内存分析

Posted lavin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang pprof 内存分析相关的知识,希望对你有一定的参考价值。

use pprof to get application  memory  useage 

add code in your main funciton

import (
 "log"
 _ "net/http/pprof"
)

func main() {
  go func() {
          log.Println(http.ListenAndServe("localhost:6060", nil))
  }()
}

build and compile you application.

 let application run and send request  then run 

#get  memory useage 
go tool pprof -inuse_space http://127.0.0.1:6060/debug/pprof/heap
go tool pprof ./yourbinaryname  localhost:6060/debug/pprof/profile

your can use help ,or  top N to get top  memory use function .

use "svg"  or "web"  to print  detail information .and need graphviz

sudo yum  install -y graphviz 

or mac 

brew install graphviz

if not generate svg ,down  tar file    and  use this command to get svg  ,after you can  open svg in  browser :

go tool pprof  /Downloads/mv-w.1/pprof.xxx.localhost:6060.samples.cpu.001.pb

 

以上是关于golang pprof 内存分析的主要内容,如果未能解决你的问题,请参考以下文章

白话 Golang pprof

golang: 使用pprof做性能分析

golang: 使用pprof做性能分析

Golang 大杀器之性能剖析 PProf

golang pprof 性能分析工具

golang pprof 性能分析工具