zoukankan      html  css  js  c++  java
  • 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

    if you are in production mode:

    just use wget :  

    wget http://localhost:9181/debug/pprof/heap
    wget http://localhost:9181/debug/pprof/profile?seconds=100 -O profile-pprof
    
    #then you can sz files to local and  generate  svg or png
    go tool pprof  heap
    go tool pprof profile-pprof
    
    
    then input  svg/png/help;
    

      

  • 相关阅读:
    rest framework Genericview
    rest framework Views
    rest framework Response
    rest framework Request
    C# Unity 依赖注入
    C# 缓存
    使用 Log4Net 做日志
    ORM 与 数据持久化
    Mycat 配置 笔记
    .NET自我进阶以及第一个框架搭建(二)
  • 原文地址:https://www.cnblogs.com/lavin/p/golang-pprof.html
Copyright © 2011-2022 走看看