本书由龙蜥社区操作系统及eBPF专家联合撰写,带领读者一次性学透eBPF原理与Linux可观测性,让性能与安全问题无所遁形,效果立竿见影。具体来说,本书系统介绍eBPF技术生态、特性、五大主流开发框架,并深度剖析应用、网络、内存、I/O、调度、安全六大关键Linux可观测性实践。
本书共9章,从逻辑上分为两部分。第一部分为eBPF基础(第1~3章):第1章概述eBPF技术的发展历程和应用场景;第2章深入解析eBPF的指令集、辅助函数及程序类型设计原理;第3章介绍如何使用libbpf、BCC、eunomia-bpf、Coolbpf等工具开发eBPF程序,尤其是BTF和CO-RE技术的应用。第二部分为eBPF可观测性实践(第4~9章),第4章探讨eBPF在用户态应用层面的可观测实践,如Java应用的GC观测;第5章讲解内核网络收发包流程及使用eBPF分析网络抖动的方法;第6章介绍内存性能瓶颈的优化方法,包括使用eBPF检测内存分配延迟和内存泄漏;第7章分析I/O子系统的原理和性能瓶颈点,并介绍使用eBPF监测I/O延迟分布和I/O卡顿问题;第8章介绍eBPF在调度系统上的观测实践,包括长时间关中断和持续性能追踪等;第9章则聚焦于eBPF在系统安全上的实践,如使用LSM进行安全防御、监控进程的各种行为等。
展开