Linux 内核一直是实现监控/可观测性、网络和安全功能的理想地方。 不过很多情况下这并非易事,因为这些工作需要修改内核源码或加载内核模块, 最终实现形式是在已有的层层抽象之上叠加新的抽象。 eBPF 是一项革命性技术,它能在内核中运行沙箱程序(sandbox programs), 而无需修改内核源码或者加载内核模块。
将 Linux 内核变成可编程之后,就能基于现有的(而非增加新的)抽象层来打造更加智能、 功能更加丰富的基础设施软件,而不会增加系统的复杂度,也不会牺牲执行效率和安全性。
相关文章链接:
性能:
观测:
- 如何用eBPF分析Golang应用
- 使用ebpf跟踪rpcx微服务
- Challenges of BPF Tracing Go
- [译]使用 bcc/BPF 分析 go 程序
- eBPF tracing in Go
视频资料: