这门课讲的是 Netty 的源码。如果你只是想在项目里用 Netty 写个能跑的客户端和服务端,市面上很多入门材料更省事;但如果你已经用过 Netty,心里一直有个疙瘩——为什么加个 handler 就能处理粘包、为什么 EventLoop 一个线程能扛住那么多连接、pipeline 里那些 inbound/outbound 到底按什么顺序走——那这门课值得你花时间慢慢啃。
先掂量一下自己的底子
坦白说,这不是一门零基础课。看之前你最好满足两条:一是写过 Java 网络程序,知道 BIO、NIO、Selector 大概在干什么;二是真的动手用过 Netty,哪怕只是照抄过一段 Echo 示例。如果这两条都不满足,硬看源码剖析会非常痛苦,讲解里默认你见过这些 API,直接就开始翻类、追调用链了。
反过来,如果你已经能熟练用 Netty 搭服务,只是没看过底层,那这门课正好补上那块空白。学习节奏建议慢:一讲源码往往对应好几个类、几层调用,听完不自己翻一遍代码,等于没听。我建议每看完一讲,就打开 IDE 把讲到的类找出来,跟着断点走一遍,哪怕一次只走通一条路径。
从哪几讲切入,哪些可以先跳
开头的综述别急着跳过,它给的是整门课的坐标,告诉你后面会沿着哪几条线走。接着的核心部分,建议按「先事件循环、再 pipeline、后编解码」的顺序看。事件循环和线程模型是理解一切的地基,地基没打牢,后面 pipeline 里 handler 的执行顺序你只会越看越乱。
粘包半包那一讲是全课的重点之一,也是最容易一看就懂、一写就错的地方。它既讲 Netty 提供了哪几种解码器,也讲这些解码器内部怎么攒数据、怎么切分,配合你自己写一个自定义协议的编解码练习,效果最好。
后半段有几个偏应用的章节,会拿 Cassandra 这类真实项目当例子,讲它们怎么用 Netty。这些内容可以当作选读:如果你手头的场景和它接近,收益很大;如果只是打基础,完全可以先放一放,等主线吃透了再回头翻。最后的回顾总结也建议留到最后再看,那时你才有东西可回顾。
资料怎么配合着用
课程配的资料里既有视频也有文档图示。我的用法是:先看一遍视频,听讲解把思路顺下来;再对着图示把关键类的结构和调用关系理清楚,图比视频更适合停下来反复看;最后一定回到源码本身。视频和文档都是拐杖,真正让你记住的是自己跟着断点走过的那些调用栈。
不要贪多。一次只追一条线,比如这次只搞明白一个连接接入后事件怎么分发到 handler,下次再看数据到达时怎么在 pipeline 里流动。线追得多了,脑子会糊,反而什么都留不下。
承认有些东西第一次学不会
Netty 源码里有些部分,比如内存池、FastThreadLocal 这些,涉及不少底层细节和设计取舍。第一次听很可能云里雾里,这很正常,不是你笨。遇到这种地方,先记下它解决了什么问题、大概怎么解决的,具体实现可以以后有需要再回来抠。学习本来就不是一遍过的事,允许自己在某些章节上「先欠着」,比卡在那里反复较劲要健康得多。
这门课更适合当成一本可以反复翻的参考,而不是一次刷完的视频。慢慢来,能带走几条真正理解透的调用链,就已经很值了。
极客时间 博健 Netty源码剖析与实战
Netty源码深度解析,实战提升网络编程能力
编辑点评
深入Netty源码,剖析核心原理,实战案例丰富,适合有网络编程基础的开发者。
⭐ 编辑推荐
本课程由极客时间博健主讲,全面解析Netty源码,涵盖实战案例,助你提升网络编程能力。
课程亮点
课程目录
极客时间 - 博健 - Netty源码剖析与实战文档.png [493.5 KB] 02丨内容综述.mp4 [77.7 MB] 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丨keepalive与idle监测.mp4 [355.7 MB] 22丨源码剖析:启动服务.mp4 [214.4 MB] 28丨源码剖析:关闭服务.mp4 [373.5 MB] 24丨源码剖析:接收数据.mp4 [384.2 MB] 58丨赏析Netty之美.mp4 [139.6 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] 03丨揭开Netty面纱.mp4 [232.7 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]
适合人群
- 有网络编程基础的开发者
- 对Netty感兴趣的程序员
学习收获
祝您学习愉快!
学有所成,前程似锦!





![大疆维修,无人机维修教程[66.30GB]](https://www.feibaoke.com/api/uploads/b6a69810-862f-479c-a529-d66880073ebc.jpg)
