Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!
当前位置: 主页 > Java文档 > Java基础相关 >

BPF之巅 洞悉Linux系统和应用性能 PDF 下载


分享到:
时间:2022-07-05 09:58来源:http://www.java1234.com 作者:转载  侵权举报
基于BPF的性能优化工具提供了前所未有的系统级和应用程序级的观察能力,使用这些工具可以优化性能、调试代码、增强安全性、降低成本。本书是使用这些观察工具的全面指南。本书
失效链接处理
BPF之巅  洞悉Linux系统和应用性能  PDF 下载


下载地址:
版权归出版社和原作者所有,链接已删除,请购买正版

用户下载说明:

电子版仅供预览,下载后24小时内务必删除,支持正版,喜欢的请购买正版书籍:
http://product.dangdang.com/29164235.html
 

相关截图:



资料简介:
基于BPF的性能优化工具提供了前所未有的系统级和应用程序级的观察能力,使用这些工具可以优化性能、调试代码、增强安全性、降低成本。本书是使用这些观察工具的全面指南。本书作为全面介绍 BPF 技术的图书,从 BPF 技术的起源到未来发展方向都有涵盖,不仅全面介绍了 BPF 的编程模型,还完整介绍了两个主要的 BPF 前端编程框架 — BCC 和 bpftrace,更给出了一系列实现范例,全面展示了 BPF技术的实际能力和未来发展前景,以及使用BPF工具优化性能、修复问题、探索线上系统的内部情况。
 
本书的另一个关注方向是 Linux 系统性能和应用程序性能的调优。本书全面介绍了系统性能调优的策略、工具与实践案例,不仅介绍了对应的 BPF 工具,还着重介绍了这些工具如何与 Linux 传统性能工具进行互补,这样读者可以有选择地进行使用。
 
本书介绍的工具小巧精致,且包含了简单易读的源代码,这就是 BPF 技术的魅力所在 :安全、高效、快捷的系统扩展力。未来 BPF 技术在 Linux 中的应用场景会越来越多,越来越重要。希望本书能在大家学习这项技术并关注它的发展时提供一定的便利。本书是系统管理员、应用程序开发者、运维人员,以及其他IT从业者在企业内部或云上使用各种Linux发行版时都可参考的资料。

资料目录:
第1章 引 言1
 
1.1 BPF和eBPF是什么 1
 
1.2 跟踪、嗅探、采样、剖析和可观测性分别是什么  2
 
1.3 BCC、bpftrace和IO Visor  3
 
1.4 初识BCC:快速上手  4
 
1.5 BPF跟踪的能见度  7
 
1.6 动态插桩:kprobes和uprobes 8
 
1.7 静态插桩:tracepoint和USDT  9
 
1.8 初识bpftrace:跟踪open()  10
 
1.9 再回到BCC:跟踪open()  13
 
1.10 小结  15
 
第2章 技术背景16
 
2.1 图释BPF 16
 
2.2 BPF  17
 
2.3 扩展版BPF  18
 
2.4 调用栈回溯  41
 
2.5 火焰图 44
 
2.6 事件源 48
 
2.7 kprobes  49
 
2.8 uprobes  53
 
2.9 跟踪点 57
 
2.10 USDT  62
 
2.11 动态USDT  66
 
2.12 性能监控计数器 68
 
2.13 perf_events 69
 
2.14 小结  70
 
第3章 性能分析71
 
3.1 概览  71
 
3.2 性能分析方法论  73
 
3.3 Linux 60秒分析 77
 
3.4 BCC工具检查清单  84
 
3.5 小结  90
 
第4章 BCC91
 
4.1 BCC的组件  92
 
4.2 BCC的特性  92
 
4.3 安装BCC  94
 
4.4 BCC的工具  96
 
4.5 funccount 100
 
4.6 stackcount  105
 
4.7 trace  110
 
4.8 argdist  117
 
4.9 工具文档 121
 
4.10 开发BCC工具  126
 
4.11 BCC的内部实现  127
 
4.12 BCC的调试 128
 
4.13 小结 136
 
第5章 bpftrace137
 
5.1 bpftrace的组件 138
 
5.2 bpftrace的特性 139
 
5.3 bpftrace的安装 141
 
5.4 bpftrace工具  143
 
5.5 bpftrace单行程序  145
 
5.6 bpftrace的文档 146
 
5.7 bpftrace编程  146
 
5.8 bpftrace的帮助信息  155
 
5.9 bpftrace的探针类型  157
 
5.10 bpftrace的控制流 163
 
5.11 bpftrace的运算符 164
 
5.12 bpftrace的变量  165
 
5.13 bpftrace的函数  170
 
5.14 bpftrace映射表的操作函数  177
 
5.15 bpftrace的下一步工作  183
 
5.16 bpftrace的内部运作  185
 
5.17 bpftrace的调试  186
 
5.18 小结 190
 
第6章 CPU.191
 
6.1 背景知识 192
 
6.2 传统工具 197
 
6.3 BPF工具  210
 
6.4 BPF单行程序  251
 
6.5 可选练习 253
 
6.6 小结  254
 
第7章 内存.255
 
7.1 背景知识 256
 
7.2 传统工具 263
 
7.3 BPF工具  269
 
7.4 BPF单行程序  288
 
7.5 可选练习 289
 
7.6 小结  290
 
第8章 文件系统291
 
8.1 背景知识 292
 
8.2 传统工具 296
 
8.3 BPF工具  302
 
8.4 BPF单行程序  353
 
8.5 可选练习 359
 
8.6 小结  360
 
第9章 磁盘I/O361
 
9.1 背景知识 362
 
9.2 传统工具 367
 
9.3 BPF工具  372
 
9.4 BPF单行程序  406
 
9.5 可选练习 409
 
9.6 小结  410
 
第10章 网络411
 
10.1 背景知识  412
 
10.2 传统工具  422
 
10.3 BPF工具  433
 
10.4 BPF单行程序 507
 
10.5 可选练习  513
 
10.6 小结 515
 
第11章 安全516
 
11.1 背景知识  516
 
11.2 BPF工具  523
 
11.3 BPF单行程序 542
 
11.4 小结 544
 
第12章 编程语言.545
 
12.1 背景知识  545
 
12.2 C  551
 
12.3 Java  560
 
12.4 bash shell  601
 
12.5 其他语言  614
 
12.6 小结 619
 
第13章 应用程序.620
 
13.1 背景知识  621
 
13.2 BPF工具  625
 
13.3 BPF单行程序 662
 
13.4 BPF单行程序示范  664
 
13.5 小结 664
 
第14章 内核665
 
14.1 背景知识  666
 
14.2 分析策略  669
 
14.3 传统工具  670
 
14.4 BPF工具  675
 
14.5 BPF单行程序 697
 
14.6 BPF单行程序示范  699
 
14.7 挑战 700
 
14.8 小结 700
 
第15章 容器701
 
15.1 背景知识  701
 
15.1.1 BPF 的分析能力 703
 
15.1.2 挑战  703
 
15.1.3 分析策略 706
 
15.2 传统工具  706
 
15.2.1 从主机上分析  706
 
15.2.2 在容器内分析  707
 
15.2.3 systemd-cgtop  707
 
15.2.4 kubectl top  708
 
15.2.5 docker stats 708
 
15.2.6 /sys/fs/cgroups  709
 
15.2.7 perf 709
 
15.3 BPF工具  710
 
15.4 BPF单行程序 717
 
15.5 可选练习  717
 
15.6 小结 718
 
第16章 虚拟机管理器719
 
16.1 背景知识  719
 
16.2 传统工具  722
 
16.3 访客系统的BPF工具 723
 
16.4 宿主机BPF工具  732
 
16.5 小结 737
 
第17章 其他BPF性能工具738
 
17.1 Vector和Performance Co-Pilot(PCP) 738
 
17.2 Grafana和Performance Co-Pilot  747
 
17.3 Cloudflare eBPF Prometheus Exporter(配合Grafana)  750
 
17.4 kubectl-trace  752
 
17.5 其他工具  755
 
17.6 小结 755
 
第18章 建议、技巧和常见问题. 756
 
18.1 典型事件的频率和额外开销  756
 
18.2 以49Hz或99Hz为采样频率  760
 
18.3 黄猪和灰鼠 760
 
18.4 开发目标软件  762
 
18.5 学习系统调用  763
 
18.6 保持简单  764
 
18.7 事件缺失  764
 
18.8 调用栈缺失 766
 
18.9 打印时符号缺失(函数名称)  767
 
18.10 跟踪时函数缺失  768
 
18.11 反馈回路  769
 
18.12 被丢掉的事件 769
 
附录A bpftrace单行程序770
 
附录B bpftrace备忘单775
 
附录C BCC工具的开发778
 
附录D C.BPF. 793
 
附录E BPF指令812
 
 
 
------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐