使用 Pprof 监控性能
Pprof 是一个 Go 性能分析工具,帮助识别 CPU 和内存使用等方面的性能瓶颈。它与 controller-runtime 库的 HTTP 服务器集成,允许通过 HTTP 端点进行性能分析。您可以使用 go tool pprof
可视化数据。由于 Pprof 已内置于 controller-runtime 中,因此不需要单独安装。管理器选项 使启用 pprof 和收集运行时指标变得简单,从而优化控制器性能。
如何使用 Pprof?
-
启用 Pprof
在您的
cmd/main.go
文件中,添加字段: -
试一试
在启用Pprof之后,您需要构建并部署您的控制器以进行测试。请按照快速入门指南中的步骤,在本地或集群上运行您的项目。
然后,您可以应用您的CRs/样本以监控其控制器的性能。
-
导出数据
使用
curl
,将性能统计导出到文件中,格式如下:请注意,我们正在使用通过配置的绑定主机和端口。# cmd/main.go 中的管理选项curl -s "http://127.0.0.1:8082/debug/pprof/profile" > ./cpu-profile.out
-
在浏览器中可视化结果
# Go工具将在8080端口打开一个会话。# 你可以根据自己的需要进行更改。go tool pprof -http=:8080 ./cpu-profile.out
可视化结果会根据部署的工作负载和控制器的行为而有所不同。然而,您将在浏览器中看到类似于以下的结果:
您已对数据进行训练,直到2023年10月。