25、加餐05 | eBPF:怎么更加深入地查看内核中的函数?

你好,我是程远。 今天这一讲,我们聊一聊eBPF。在我们专题加餐第一讲的分析案例时就说过,当我们碰到网络延时问题,在毫无头绪的情况下,就是依靠了我们自己写的一个eBPF工具,找到了问题的突破口。 由此可见,eBPF在内核问题追踪上的重要性是不言而喻的...

24、加餐04 | 理解ftrace(2):怎么理解ftrace背后的技术tracepoint和kprobe?

你好,我是程远。 前面两讲,我们分别学习了perf和ftrace这两个最重要 Linux tracing工具。在学习过程中,我们把重点放在了这两个工具最基本的功能点上。 不过你学习完这些之后,我们内核调试版图的知识点还没有全部点亮。 如果你再去查看一...

23、加餐03 | 理解ftrace(1):怎么应用ftrace查看长延时内核函数?

你好,我是程远。 上一讲里,我们一起学习了perf这个工具。在我们的案例里,使用perf找到了热点函数之后,我们又使用了ftrace这个工具,最终锁定了长延时的函数estimation_timer()。 那么这一讲,我们就来学习一下ftrace这个工...

22、加餐02 | 理解perf:怎么用perf聚焦热点函数?

你好,我是程远。今天我要和你聊一聊容器中如何使用perf。 [上一讲]中,我们分析了一个生产环境里的一个真实例子,由于节点中的大量的IPVS规则导致了容器在往外发送网络包的时候,时不时会有很高的延时。在调试分析这个网络延时问题的过程中,我们会使用多种...

21、加餐01 | 案例分析:怎么解决海量IPVS规则带来的网络延时抖动问题?

你好,我是程远。 今天,我们进入到了加餐专题部分。我在结束语的彩蛋里就和你说过,在这个加餐案例中,我们会用到perf、ftrace、bcc/ebpf这几个Linux调试工具,了解它们的原理,熟悉它们在调试问题的不同阶段所发挥的作用。 加餐内...