golang: 使用pprof做性能分析
Posted kanguolaikanguolaik
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang: 使用pprof做性能分析相关的知识,希望对你有一定的参考价值。
一、pprof介绍
官方提供了2个pprof包:
runtime/pprof:用于普通代码性能分析
net/http/pprof:用于http服务器性能分析;对runtime/pprof进行了封装,并在http端口上暴露出来。
二、使用
2.1 代码
运行:go run test.go
package main
import (
"fmt"
"net/http"
_ "net/http/pprof"
"time"
)
func run()
http.ListenAndServe(":8000", nil)
return
func main()
go run()
go func()
for
fmt.Println("running...")
time.Sleep(10 * time.Millisecond)
()
select
2.2 通过web页面分析
http://127.0.0.1:8000/debug/pprof/
2.3 通过交互终端分析
go tool pprof http://localhost:8000/debug/pprof/profile\\?seconds\\=60
top10
go tool pprof http://localhost:8000/debug/pprof/heap
top
三、参考资料
以上是关于golang: 使用pprof做性能分析的主要内容,如果未能解决你的问题,请参考以下文章