go 的內(nèi)存分析

發(fā)現(xiàn)項目的內(nèi)存占用過多,想找找原因 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 就是分析的數(shù)據(jù)

打開個終端,查看內(nèi)存分析,輸入如下:

go tool pprof http://localhost:8086/debug/pprof/heap   
進入 pprof 模式

(pprof) 模式下,可以輸入 help 查看輸出的方式:

輸出方式

比如保存為圖片:

(pprof) png > /someDir

(pprof) 是命令提示符

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容