继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【转发】Golang 性能分析神器 pprof 详解与实践(图文教程)

五岁小孩
关注TA
已关注
手记 35
粉丝 0
获赞 2

一、简介

pprof(性能剖析工具)是 Go 语言标准库提供的用于 go 程序性能分析的工具。可以帮助你分析程序在 CPU使用率、内存堆栈分配、内存占用、协程、锁等方面的表现并且生成相应的性能分析报告。零侵入性,无需修改服务代码,导入即可生效,生产级安全,采样开销极低,并且具有可视化界面帮助开发者快速定位问题

二、用法

(一)开启 pprof

首先,导入包

import (
    _ "net/http/pprof"
)

然后,开启一个 http 服务方便获取性能数据

go func() {
        logs.Info(http.ListenAndServe(":30552", nil))
    }()

完整参考代码例子

import _ "net/http/pprof"
func StartPprof() {
    go func() {
        logs.Info(http.ListenAndServe(":30552", nil)) // 表示启动端口为 30552 的 pprof 服务
    }()
}
func main(){

  ....

  // 开启 pprof 性能服务
  StartPprof() 

  // 启动自己的程序
  err = router.Run(address)
    if err != nil {
        panic(err)
    }
  ....
}

(二)用法一:直接访问

见原文地址

原文地址

打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP