• 深入理解EBPF与可观测性

    释放查看图文详情

21年品牌 40万+商家 超1.5亿件商品

深入理解EBPF与可观测性

全新正版 极速发货

68.29 6.9折 99 全新

库存21件

广东广州

送至北京市朝阳区

运费快递 ¥3.00

认证卖家担保交易快速发货售后保障

作者毛文安 郑昱笙 程书意 廖肇燕 著

出版社机械工业出版社

ISBN9787111774808

出版时间2025-03

装帧平装

开本16开

定价99元

货号1203557780

上书时间2025-03-24

评价24334好评率 99.93%

  • 物流很快 984
  • 品相不错 954
  • 发货速度快 935
  • 包装仔细 900
  • 非常满意 773
  • 价格实惠 703
  • 值得信赖 682
  • 服务态度好 635
  • 物超所值 594
  • 品相超预期 565
  • 服务态度差 2
  • 联系不到卖家 2
  • 品相未达预期 1
  • 有小瑕疵 1
  • 发货太慢 1
  • 没收到货 1
  • 物流太差 1
查看全部评价

谢岳书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
目录
Contents 目  录<br />前言<br />第1章 eBPF的发展与应用1<br />1.1 eBPF概述1<br />1.1.1 Linux的跟踪与诊断技术简介1<br />1.1.2 eBPF的发展史3<br />1.1.3 eBPF与cBPF的功能区别4<br />1.1.4 eBPF与内核模块5<br />1.1.5 eBPF的优势与劣势5<br />1.2 eBPF应用场景6<br />1.2.1 eBPF跟踪与性能分析7<br />1.2.2 eBPF与可观测8<br />1.2.3 eBPF与网络14<br />1.2.4 eBPF与安全14<br />1.3 eBPF基础架构16<br />1.3.1 eBPF加载流程和相关组件17<br />1.3.2 eBPF的JIT编译原理18<br />1.3.3 eBPF的挂载与执行22<br />1.4 本章小结22<br />第2章 eBPF的特性解析23<br />2.1 eBPF指令架构23<br />2.1.1 cBPF指令集24<br />2.1.2 eBPF指令集25<br />2.1.3 使用C语言编写eBPF程序34<br />2.1.4 使用汇编语言编写eBPF程序35<br />2.1.5 使用字节码编写eBPF程序37<br />2.2 eBPF系统调用40<br />2.2.1 eBPF系统调用的函数原型40<br />2.2.2 eBPF系统调用的类型40<br />2.2.3 eBPF系统调用的数据<br />   结构解析41<br />2.3 eBPF辅助函数43<br />2.3.1 eBPF辅助函数的设计43<br />2.3.2 eBPF辅助函数的实现47<br />2.4 eBPF程序类型设计49<br />2.4.1 eBPF程序类型49<br />2.4.2 验证器接口设计51<br />2.4.3 测试接口设计52<br />2.4.4 卸载接口设计53<br />2.5 跟踪诊断类eBPF程序54<br />2.5.1 kprobe/kretprobe类程序55<br />2.5.2 uprobe/uretprobe类程序58<br />2.5.3 tracepoint类程序60<br />2.5.4 perf事件类程序63<br />2.6 网络处理类:XDP程序66<br />2.6.1 XDP基本原理67<br />2.6.2 XDP应用场景68<br />2.6.3 XDP内核解析69<br />2.7 本章小结73<br />第3章 eBPF开发框架74<br />3.1 libbpf74<br />3.1.1 使用libbpf开发eBPF程序75<br />3.1.2 BPF类型格式79<br />3.1.3 CO-RE功能82<br />3.2 BCC85<br />3.2.1 环境配置86<br />3.2.2 使用BCC开发eBPF程序88<br />3.2.3 编译运行90<br />3.3 bpftrace90<br />3.3.1 环境配置91<br />3.3.2 使用bpftrace开发eBPF程序92<br />3.3.3 编译运行95<br />3.4 eunomia-bpf96<br />3.4.1 环境配置97<br />3.4.2 使用eunomia-bpf?开发<br />   eBPF程序98<br />3.4.3 编译运行100<br />3.5 Coolbpf?100<br />3.5.1 环境配置102<br />3.5.2 使用Coolbpf开发eBPF<br />   程序102<br />3.5.3 编译运行103<br />3.6 eBPF开发框架对比104<br />3.7 本章小结105<br />第4章 基于eBPF的应用<br />    可观测实践106<br />4.1 使用uprobe/USDT观测应用程序106<br />4.1.1 uprobe:用户空间的动态<br />   追踪工具106<br />4.1.2 USDT:用户空间的静态<br />   追踪点技术108<br />4.2 Nginx函数延迟观测与性能分析109<br />4.2.1 基于eBPF分析函数延迟110<br />4.2.2 Nginx中与性能相关的<br />   关键函数113<br />4.2.3 测试Nginx的函数延迟115<br />4.3 Java应用的GC观测116<br />4.3.1 GC策略简介与问题<br />   排查示例116<br />4.3.2 通过eBPF实现GC观测117<br />4.4 MySQL慢查询监测与排障实践123<br />4.4.1 慢查询的常见原因124<br />4.4.2 慢查询监测方法与示例场景124<br />4.4.3 利用bpftrace程序追踪<br />   MySQL查询126<br />4.5 观测SSL/TLS明文数据128<br />4.5.1 TLS的工作原理128<br />4.5.2 OpenSSL API工作机制分析129<br />4.5.3 sslsniff的eBPF内核<br />   代码编写130<br />4.5.4 sslsniff的用户态代码分析135<br />4.5.5 编译与运行sslsniff工具138<br />4.6 使用eBPF跟踪Go协程状态139<br />4.6.1 跟踪Go协程状态的eBPF<br />   内核代码140<br />4.6.2 运行eBPF程序追踪Go<br />   协程状态141<br />4.7 本章小结142<br />第5章 基于eBPF的网络<br />    可观测实践143<br />5.1 内核网络协议栈143<br />5.1.1 网络发包流程143<br />5.1.2 网络收包流程159<br />5.1.3 内核网络抖动问题分析168<br />5.2 网络可观测实践172<br />5.2.1 HTTP流量统计172<br />5.2.2 TCP连接信息和往返<br />   时间分析179<br />5.2.3 XDP实现可编程包处理187<br />5.2.4 基于eBPF的流量控制实践189<br />5.2.5 基于sockmap进行数据转发192<br />5.2.6 基于sockops监测服务<br />   响应延迟205<br />5.2.7 Virtio网卡队列可观测213<br />5.3 本章小结218<br />第6章 基于eBPF的内存<br />    可观测实践219<br />6.1 系统内存的申请流程219<br />6.2 内存性能瓶颈点与解决思路222<br />6.2.1 常见的内存性能瓶颈222<br />6.2.2 内存性能瓶颈诊断方法225<br />6.3 实战:页面错误监控227<br />6.3.1 什么是页面错误227<br />6.3.2 有关页面错误的跟踪点228<br />6.3.3 页面错误事件可观测<br />   实现方案229<br />6.4 实战:使用cachetop分析<br />   文件缓存233<br />6.4.1 使用常规方法分析文件缓存233<br />6.4.2 cachetop实现原理234<br />6.4.3 cachetop内核部分代码实现235<br />6.4.4 cachetop用户部分代码实现237<br />6.4.5 运行结果239<br />6.5 实战:使用memleak跟踪<br />   内存泄漏240<br />6.5.1 调试内存泄漏的挑战240<br />6.5.2 memleak的实现原理241<br />6.5.3 memleak内核部分代码实现242<br />6.5.4 用户态程序实现251<br />6.5.5 运行结果253<br />6.6 本章小结253<br />第7章 基于eBPF的I/O<br />    可观测实践254<br />7.1 I/O子系统性能瓶颈点254<br />7.2 I/O衡量指标258<br />7.3 使用eBPF进行I/O流量分析260<br />7.3.1 iofsstat的功能260<br />7.3.2 iofsstat的实现262<br />7.4 实战:使用eBPF分析I/O延迟264<br />7.4.1 iolatency延迟分析功能介绍264<br />7.4.2 iolatency延迟分析功能实现266<br />7.4.3 其他I/O延迟分析工具介绍272<br />7.5 实战:使用eBPF分析<br />     I/O卡顿问题273<br />7.5.1 如何检测I/O hang273<br />7.5.2 实现方案274<br />7.6 统计随机/顺序磁盘的I/O请求280<br />7.6.1 biopattern工具介绍281<br />7.6.2 biopattern的实现原理281<br />7.7 本章小结287<br />第8章 基于eBPF的调度<br />    可观测实践288<br />8.1 Linux调度子系统与eBPF<br />     的关系288<br />8.1.1 eBPF在调度性能优化中<br />   的应用288<br />8.1.2 调度子系统的hook点289<br />8.2 实战:关中断检测290<br />8.2.1 常用方案290<br />8.2.2 方案分析291<br />8.2.3 方案描述292<br />8.2.4 技术实现292<br />8.2.5 运行流程293<br />8.2.6 工具使用293<br />8.3 实战:统计调度延迟分布294<br />8.3.1 调度延迟的产生294<br />8.3.2 编译运行300<br />8.4 实战:捕获硬中断和软中断事件302<br />8.4.1 实现原理302<br />8.4.2 代码实现303<br />8.5 实战:持续性能追踪305<br />8.5.1 性能追踪示例306<br />8.5.2 详细实现过程307<br />8.5.3 社区中的持续性能追踪项目313<br />8.6 本章小结314<br />第9章 基于eBPF的安全<br />    可观测实践315<br />9.1 监控进程的文件访问行为316<br />9.1.1 监控文件访问行为的实现316<br />9.1.2 运行eBPF监控文件访问<br />   程序示例317<br />9.2 监控进程信号发送行为317<br />9.3 监控进程退出事件320<br />9.4 使用eBPF进行命令审计322<br />9.5 隐藏进程和文件信息323<br />9.5.1 信息隐藏技术的应用场景323<br />9.5.2 隐藏信息的内核态eBPF<br />   程序实现324<br />9.5.3 隐藏信息的用户态程序实现328<br />9.5.4 运行隐藏信息的eBPF<br />   程序示例330<br />9.6 发送信号终止恶意进程331<br />9.6.1 异常响应相关的安全场景331<br />9.6.2 终止恶意进程的eBPF<br />   程序实现332<br />9.7 基于LSM的安全检测防御333<br />9.7.1 确认LSM模块是否可用333<br />9.7.2 安全检测防御机制实现334<br />9.8 本章小结336

内容摘要
本书由龙蜥社区操作系统及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进行安全防御、监控进程的各种行为等。

主编推荐
1)多位领域大佬联袂推荐,对内容和作者予以充分肯定,强烈推荐阅读本书。
2)龙蜥社区操作系统及eBPF专家联合撰写,长期一线经验总结,让你少走弯路。
3)一次性学透eBPF原理与Linux可观测性,让性能与安全问题无所遁形。
4)系统介绍eBPF的技术生态、底层原理以及五大主流开发框架,并深度剖析应用、网络、内存、I/O、调度、安全六大关键Linux可观测性实践,带你解决实践难题。

   为你推荐   

—  没有更多了  —

微信扫码逛孔网

无需下载

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP