持续性能分析

什么是 Grafana Pyroscope?

Grafana Pyroscope 是一个开源的持续性能分析数据库,提供快速、可扩展、高可用和高效的存储与查询。这有助于你更好地理解应用程序的资源使用情况,精确到行号。

grafana pyroscope

Grafana Pyroscope 概览

Grafana Pyroscope 支持聚合持续性能分析数据,提供高可用性、多租户和持久存储。

Grafana Pyroscope 由两个开源持续性能分析项目合并而成:由 Grafana Labs 于 2022 年推出的 Phlare,以及由 Ryan Perry 和 Dmitry Filimonov 于 2021 年创立的 Pyroscope。Grafana Pyroscope 项目的使命是为开源社区提供大规模持续性能分析的能力,帮助开发者更好地理解其代码的资源使用情况。通过这样做,Pyroscope 使用户能够了解他们的应用程序性能并优化基础设施支出。

Grafana Labs 很荣幸能够主导 Grafana Pyroscope 项目的开发。该项目原生集成 Grafana,使用户能够将性能分析数据与其现有的指标、日志和追踪相关联,并将性能分析作为应用程序的另一个关键可观测性信号来使用。

为什么使用 Grafana Pyroscope 进行持续性能分析?

易于安装,只需一个二进制文件,无需额外依赖项 — 就像 Prometheus 一样
提供持久的、长期的性能分析数据存储,帮助你识别随时间的变化和趋势
水平可扩展的分布式架构意味着 Pyroscope 可以轻松横向扩展以处理更多传入的性能分析数据
与 Grafana 完全兼容,因此你可以将性能分析数据与现有的指标、日志和追踪相关联
与 Loki、Mimir 和 Tempo 具有一致的架构,这降低了那些同时运行 Pyroscope 和 Grafana Labs 其他数据库的操作人员的学习曲线和认知负担
可以配置为高可用模式,确保 100% 的正常运行时间,即使在升级和机器故障期间也是如此
多租户和隔离使得一个数据库可以服务于多个独立的团队或业务单元
由于 Pyroscope 使用对象存储,你可以在不耗尽预算的情况下存储所需的所有历史数据。支持 AWS S3、Google Cloud Storage、Azure blob storage、OpenStack Swift 以及任何兼容 S3 的对象存储

Grafana Pyroscope 如何进行持续性能分析?

how does grafana pyroscope work
1

收集性能分析数据

Grafana Pyroscope 从暴露 pprof 端点的应用程序收集 CPU 和内存性能分析数据。

2

轻松运行,不牺牲可扩展性或可靠性

作为单个进程启动 Pyroscope,几分钟内即可上手。当你准备好从更多应用程序收集性能分析数据或需要高可用性设置时,只需添加更多机器并横向扩展即可。剩下的 Pyroscope 会处理好。

3

在 Grafana 中可视化

使用 Grafana 的 Pyroscope 数据源,查询存储在 Pyroscope 中的数据,按相关时间范围和标签进行切片和筛选。Grafana 的火焰图、直方图和表格视图允许你以不同的方式可视化性能分析数据,并从中构建强大的仪表盘。

4

优化你的代码

Grafana Pyroscope 帮助你识别代码中最慢和最消耗内存的部分,从而使开发者能够进行优化这些区域。这将带来:

  • 更快的应用程序
  • 更可靠的应用程序,减少 OOM 崩溃
  • 成本效益更高的应用程序,占用更少的 CPU 和内存

基于开源构建,由社区驱动

Grafana Pyroscope 结合了 Grafana Labs 工程师的最佳洞察,他们每天大规模使用持续性能分析来提高我们应用程序的性能和可靠性。我们很高兴能分享我们的经验,并与开源社区一起开发这个首创的持续性能分析数据库。

认识 Grafana Pyroscope 贡献者

与这些优秀的人才一起工作

准备好在 Grafana 中启动 Pyroscope 了吗?