Netty 的课在市面上不算少,但大多数停在「怎么用」——Handler 怎么加、Channel 怎么配、粘包怎么解。博健这门在结构上明显更偏向另一半:它是拿 Netty 当一份可读的源码来拆的。如果你已经能写出跑得通的 Netty 服务端,却说不清 EventLoop 里那根线程到底在转什么、Pipeline 上的事件为什么能逆着走,这门课的含金量才真正…
Netty 的课在市面上不算少,但大多数停在「怎么用」——Handler 怎么加、Channel 怎么配、粘包怎么解。博健这门在结构上明显更偏向另一半:它是拿 Netty 当一份可读的源码来拆的。如果你已经能写出跑得通的 Netty 服务端,却说不清 EventLoop 里那根线程到底在转什么、Pipeline 上的事件为什么能逆着走,这门课的含金量才真正开始体现。
从内容编排看,课程把较大比重放在 Netty 自身机制的拆解上,尤其是 buffer 管理、事件循环调度、Pipeline 责任链这几块骨架。它不会花大篇幅教你 ChannelOption 每个参数填什么,而是把「一个连接从 accept 到可读、再到业务 Handler 拿到 ByteBuf」这条链路走一遍。对目录党来说,判断哪几节值钱的标准很简单:凡是标题里带「源码剖析」的,基本都是需要配着 IDE 断点一起看的;凡是带具体数字编号偏后的实战章节,是拿来验证前面原理的。
粘包、半包是 Netty 面试和线上问题的高频区,课里对这块的处理方式不是「给个 LengthFieldBasedFrameDecoder 就完事」,而是回到 ByteToMessageDecoder 的累积逻辑,讲清楚 Netty 为什么能在不完整数据上反复 tryDecode、读到多少才触发一次 decode、解码后剩下的字节去哪了。把这节吃透,就能自己判断一个自定义协议该不该拆成定长 + 变长两段处理。
编解码相关的章节同样值得动手。课程后半段走的是客户端实现路线,从编解码写到响应分发,这是一个完整闭环——服务端写完再补客户端,能顺带把 Netty 作为「双端框架」的对称性看清楚。建议这两条线放一起对比看:服务端 decode 和客户端 encode 的调用时机、线程归属,其实不完全一样。
已经写过至少一个 Netty 项目、被线程模型或内存泄漏坑过一次的人,收益最大——因为你带着具体问题来看源码,才有共鸣。完全没用过 Netty 的初学者看这门课会有点吃力,它默认你已经知道 Channel、Handler、EventLoop 这些名词的用法。另外,如果你的目标只是快速搭一个能用的服务端,那其实不需要把源码层啃这么深,课程的性价比在你身上会打折。
一句话判断:这是一门「看懂轮子」的课,不是「学会用轮子」的课。挑它之前先确认自己要的是前者。
Netty源码深度解析,实战提升网络编程能力
深入Netty源码,剖析核心原理,实战案例丰富,适合有网络编程基础的开发者。
本课程由极客时间博健主讲,全面解析Netty源码,涵盖实战案例,助你提升网络编程能力。
极客时间 - 博健 - Netty源码剖析与实战文档.png [493.5 KB] 35丨引入响应分发完善客户端.mp4 [407.1 MB] 33丨实现客户端编解码.mp4 [60.6 MB] 13丨源码剖析:Netty对处理粘包-半包的支持.mp4 [515.6 MB] 55丨Cassandra如何使用Netty?.mp4 [179.8 MB] 60丨课程回顾与总结.mp4 [98.5 MB] 31丨实现服务器端编解码.mp4 [327.0 MB] 01丨课程介绍.mp4 [169.1 MB] 12丨TCP粘包-半包Netty全搞定.mp4 [401.0 MB] 57丨Hadoop如何使用Netty?.mp4 [237.6 MB] 48丨安全增强:设置“高低水位线”等保护好自己.mp4 [166.5 MB] 39丨调优参数:图解费脑的三个参数.mp4 [151.4 MB] 42丨跟踪诊断:让应用内存不“泄露”?.mp4 [395.5 MB] 04丨为什么舍近求远:不直接用JDKNIO?.mp4 [140.3 MB] 47丨优化使用:为不同平台开启native.mp4 [342.3 MB] 25丨源码剖析:业务处理.mp4 [238.8 MB] 20丨源码解析:Netty对堆外内存和内存池的支持.mp4 [394.3 MB] 16涓╧eepalive涓巌dle鐩戞祴.mp4 [355.7 MB] 22丨源码剖析:启动服务.mp4 [214.4 MB] 28丨源码剖析:关闭服务.mp4 [373.5 MB] 24丨源码剖析:接收数据.mp4 [384.2 MB] 43丨优化使用:用好自带注解省点心.mp4 [338.9 MB] 19丨Netty如何玩转内存使用.mp4 [241.5 MB] 53丨安全增强:拿来即用的SSL-抓包暴露本质.mp4 [281.5 MB] 07丨Netty的现状与趋势.mp4 [169.8 MB] 17丨源码剖析:Netty对keepalive与idle监测的支持.mp4 [517.0 MB] 32丨实现一个服务器端.mp4 [174.1 MB] 38丨调优参数:权衡Netty核心参数.mp4 [528.1 MB] 09丨源码剖析:Netty对I-O模式的支持.mp4 [267.2 MB] 49丨安全增强:启用空闲监测.mp4 [381.5 MB] 44丨优化使用:“整改”线程模型让响应健步如飞.mp4 [144.6 MB] 59丨如何给Netty贡献代码?.mp4 [280.8 MB] 26丨源码剖析:发送数据.mp4 [210.0 MB] 27丨源码剖析:断开连接.mp4 [430.3 MB] 10丨Netty如何支持三种Reactor?.mp4 [255.6 MB] 34丨完成一个客户端雏形.mp4 [397.4 MB] 15丨源码剖析:Netty对常用编解码的支持.mp4 [553.1 MB] 45丨优化使用:增强写,延迟与吞吐量的抉择.mp4 [217.1 MB] 40丨跟踪诊断:如何让应用易诊断?.mp4 [375.0 MB] 18丨Netty的那些“锁”事.mp4 [355.2 MB] 36丨Netty编码中易错点解析.mp4 [417.6 MB] 30丨案例介绍和数据结构设计.mp4 [88.9 MB] 29丨遍写网络应用程序的基本步骤.mp4 [119.4 MB] 51丨安全增强:少不了的自定义授权.mp4 [356.8 MB] 05丨为什么孤注一掷:独选Netty?.mp4 [80.0 MB] 11丨源码剖析:Netty对Reactor的支持.mp4 [422.3 MB] 46丨优化使用:如何让应用丝般“平滑”?.mp4 [499.8 MB] 23丨源码剖析:构建连接.mp4 [374.4 MB] 50丨安全增强:简单有效的黑白名单.mp4 [338.5 MB] 14丨常用的“二次”编解码方式.mp4 [227.3 MB] 08丨Netty怎么切换三种I-O模式?.mp4 [151.0 MB] 21丨Netty代码编译与总览.mp4 [442.8 MB] 37丨调优参数:调整System参数夯实基础.mp4 [387.4 MB] 54丨安全增强:拿来即用的SSL-轻松融入案例.mp4 [226.7 MB] 41丨跟踪诊断:应用能可视,心理才有底.mp4 [329.7 MB] 56丨Dubbo如何使用Netty?.mp4 [197.0 MB] 06丨Netty的前尘往事.mp4 [99.1 MB] 52丨安全增强:拿来即用的SSL-对话呈现表象.mp4 [178.9 MB]
🎉 祝您学习愉快!