程序性能分析基础
-
在 Go 语言中,用于分析程序性能的概要文件有三种,它们分别是:CPU概要文件,英译为:CPU Profile、内存概要文件,英译为:Mem Profile和阻塞概要文件,英译为:Block Profile。
在这些概要文件中大多包含的都是:在某一段时间内,对 Go程序的相关指标进行多次采样后得到的概要信息。对于CPU的概要文件来说,其中的每一段独立的概要信息都记录着,CPU在进行某一次采样的那个时刻,CPU上正在执行的Go代码。
而对于内存概要文件来说,其中的每一段概要信息都记录的是,在某一个采样时刻,正在执行的 Go 代码,以及记录着堆内存的使用情况,这里还包含着已分配和已释放的字节数量和对象数量。至于阻塞概要文件,其中的每一段概要信息,都是代表了Go程序中的一个 goroutine 阻塞事件。
在默认的情况下,这些概要文件中的信息并不是普通的文本文件,它们都是以二进制的形式展现的文件。如果我们还是依旧使用常规的文本编辑器去查看它们的话看到的就是一堆乱码的形式,所以我们就不可以去使用那些常规的文本编辑器去查看它们。
而往往这时候就可以显现出go tool pprof这个工具的作用了。我们可以通过go tool pprof这个工具进入到一个基于命令行的交互式界面,并对指定的概要文件进行查阅。
西南地区IT社群(QQ)
- 云南
- 【昆明网页设计交流吧】243627302
- 【昆明nodejs交流吧】 243626749
- 【VUE】838405306
- 【云南程序员总群】343606807
- 【昆明UI设计】104031254
- 【云南软件外包】15547313
- 贵州
- 【PHP/java源码/站长交流群】55692114
- 四川
- 【成都Java/JavaWeb交流】86669225
- 【vaScript+PHP+MySql】116270060
- 【UI设计/设计交流学习群】135794928
- 重庆
- 【诺基亚 JAVA游戏博物馆】 559479780
- 【PHP,Java,Python,C++接单】 442103442
- 西藏