
《BPF Performance Tools》读书笔记
文章平均质量分 95
作为BPF技术的开拓者和专家,Brendan Gregg在本书中不仅展示了超过150个可以立即使用的分析工具和调试工具,对这些工具的应用场景进行了分析,还提供了开发自定义工具的分步指南。在本书中,读者可学习到如何分析CPU、内存、存储设备、文件系统、网络、编程语言、应用程序、容器、虚拟机管理器、安全
光电仪器设计小学生
成长是:高原-低谷模式——成长是跳跃式的,要经过量的积累,在积累的过程中,往往要伴随着扬弃,所以常常会跌入低谷。
展开
-
《BPF( 伯克利数据包过滤器 ) Performance Tools》 第六章 CPU
如果你发现某个程序明显受限于CPU资源(CPU-Bound), 那么你就可以用到本章提到的CPU工具来进一步定位并分析问题。市面上有各种各样的采样式性能剖析:器(SamplingProfiler)以及各种各样的性能指标来帮助你理解程序的CPU用量。不过,(这可能会出乎你的意料),BPF跟踪系统仍然可以在很多地方帮助你进行深度分析。学习目标■理解CPU的运行模式、CPU调度器的行为及CPU缓存。■理解如何使用BPF来分析CPU调度器、CPU用量及硬件性能。原创 2022-10-15 13:49:25 · 1650 阅读 · 1 评论 -
BPF( 伯克利数据包过滤器 ) Performance Tools》 第五章 bpftrace
bpftrace是一款基于BPF和BCC的开源跟踪器。和BCC一样,bpftrace自带了许多性能工具和支持文档。它同时还提供了一个高级编程语言环境,可以用来创建强大的单行程序和小工具。比如,下面的单行程序以直方图形式统计vfs_read() 的返回值(读取的字节数或错误码) :Alastair Robertson阿拉斯泰尔·罗伯逊Alastair Robertson于2016年12月创建了bpftrace, 当时它还只是一个业余项目。原创 2022-10-08 23:42:06 · 1913 阅读 · 0 评论 -
《BPF( 伯克利数据包过滤器 ) Performance Tools》 第三章 性能分析
本书介绍的各种工具可用于性能分析、故障排查、安全分析以及其他很多方面。为了帮助你理解如何运用这些工具,本章提供了一份针对性能分析的快速入门指南。学习目标:■理解性能分析的工作目标和工作内容。■对业务负载进行定性分析。■实施USE方法论。■实践下钻分析方法论。■理解清单分析方法论。■使用传统工具和60秒Linux清单快速初步定位性能问题。■使用BCC/BPF工具清单快速定位性能问题。原创 2022-10-06 20:15:34 · 1390 阅读 · 0 评论 -
《BPF( 伯克利数据包过滤器 ) Performance Tools》 第二章 技术背景
下图是Sasha Goldshtein用户态预定义静态跟踪(user-level statically defined tracing, USDT)提供了一个用户空间版的跟踪点机制。BCC的USDT支持是Sasha Goldshtein实现的,bpfrace的USDT支持是由笔者和Matheus Marchini完成的。用户态的软件有很多与跟踪和日志相关的技术,而且许多应用程序自身也内置了自定义的事件日志系统,可以根据需要随时开启。USDT与众不同之处在于,它依赖于外部的系统跟踪器来唤起。原创 2022-10-05 23:47:11 · 2139 阅读 · 0 评论 -
《BPF( 伯克利数据包过滤器 ) Performance Tools》 第一章 引言
并且显示了延迟离群点的存在。有人开发了动态跟踪工具(比如kerninstCambhs99l), 其也包含相应的跟踪语言,但是这些工具实在太过复杂,在实践中很少被使用,还有部分原因是它们会带来较大的运行风险:动态跟踪要求实时修改地址空间中的应用指令,一旦出现任何错误就会导致进程或者内核崩溃。opensnoop.bt 工具可以对出错的软件进行故障排查,也许软件尝试打开了错误的文件位置:也可以用于了解配置和日志文件的具体位置:还可以识别一些性能问题,比如文件打开频次过快,或者反复检查错误文件位置等。原创 2022-10-03 00:10:04 · 1268 阅读 · 3 评论 -
《BPF( 伯克利数据包过滤器 ) Performance Tools》前言和其他
BPF性能工具可以帮助你改进性能、降低开销、解决软件问题,从而使系统和应用的效益最大化。它们能比传统性能工具分析得更多,并允许你向生产环境中的系统随意提出问题,并且能够立刻得到答案。原创 2022-10-01 15:51:27 · 1603 阅读 · 0 评论