值不值得学:先弄清它解决什么工作场景
Netty 在 Java 后端里是网络通信的底座,但凡涉及长连接、高并发消息推送、自定义协议解析、网关转发、甚至分布式中间件的数据传输,基本都绕不开它。这门课解决的核心问题,是让你从只会调 API 的状态,过渡到能看懂内部 Reactor 线程模型、ByteBuf 内存管理、Pipeline 处理链这些底层机制,进而在遇到连接泄漏、内存溢出、线程阻塞时能自己定位。如果你日常工作只做普通业务增删改查,短期用不到网络编程,那优先级可以往后放;如果你在接触 IM、游戏服务器、物联网网关、或者要深入理解 Dubbo、RocketMQ 这类中间件的通信层,这套资料就很对路。
适合什么基础,建议先看哪几块
它不适合完全没写过 Java 的人。你需要熟悉集合、多线程、IO 流,最好用过 Lambda 和函数式接口,否则看源码会卡在语言层面而不是 Netty 本身。如果你有两年左右后端经验但没碰过网络编程,建议先看前几章关于为什么不直接用 JDK NIO 的分析——这部分把原生 NIO 的空轮询 Bug、复杂的选择器使用、以及 Netty 如何做封装讲得比较透,能帮你建立“为什么要学它”的判断。之后再进入核心组件部分,重点看 EventLoop、Channel 和 Handler 的协作关系,这是后面所有实战的基础。源码剖析章节不要第一遍就钻细节,先跟着视频把主线流程跑通,第二遍再对着代码逐行看线程切换和内存分配。
资料怎么配合练习,学完能独立做什么
这套资料是视频配合图文的形式,图文部分适合快速回顾知识点,视频部分适合跟着敲代码。我的建议是不要只看不动手,每学完一个组件就自己写一个最小 Demo 验证,比如学完编解码器就手写一个简单的自定义协议拆包,学完 Pipeline 就自己串联几个 Handler 观察执行顺序。课程后半部分有从零构建实战项目的内容,这是检验学习效果的关键环节,建议先暂停视频,自己根据需求搭框架,卡住了再对照讲解查漏补缺。学完之后,你应该能独立设计一个基于自定义协议的通信服务端,处理半包粘包问题,合理配置线程模型,并且在出现内存或连接异常时知道从哪些指标入手排查。到这个程度,Netty 对你来说就不再是个黑盒。
从零开始构建一个Netty实战项目
课程目录
* 01 第一章:初识Netty:背景、现状与趋势/
* 01 01 课程介绍.mp4 (153.65 MB), 06:32
* 02 02 内容综述.mp4 (78.40 MB), 03:17
* 03 03 揭开Netty面纱.html (0.00 MB)
* 03 03 揭开Netty面纱.mp4 (212.77 MB), 08:37
* 04 04 为什么舍近求远:不直接用JDK NIO.html (0.00 MB)
* 04 04 为什么舍近求远:不直接用JDK NIO.mp4 (266.36 MB), 10:40
* 05 05 为什么孤注一掷:独选Netty.html (0.00 MB)
* 05 05 为什么孤注一掷:独选Netty.mp4 (95.80 MB), 04:10
* 06 06 Netty的前尘往事.html (0.00 MB)
* 06 06 Netty的前尘往事.mp4 (136.78 MB), 05:37
* 07 07 Netty的现状与趋势.html (0.00 MB)
* 07 07 Netty的现状与趋势.mp4 (265.55 MB), 10:10
* 02 第二章:Netty源码:从“点”(领域知识)的角度剖析/
* 01 08 Netty怎么切换三种IO模式.html (0.00 MB)
* 01 08 Netty怎么切换三种IO模式.mp4 (249.31 MB), 11:05
* 02 09 源码剖析:Netty对IO模式的支持.html (0.00 MB)
* 02 09 源码剖析:Netty对IO模式的支持.mp4 (155.22 MB), 06:36
* 03 10 Netty如何支持三种Reactor.html (0.00 MB)
* 03 10 Netty如何支持三种Reactor.mp4 (263.95 MB), 10:38
* 04 11 源码剖析:Netty对Reactor的支持.html (0.00 MB)
* 04 11 源码剖析:Netty对Reactor的支持.mp4 (241.15 MB), 10:20
* 05 12 TCP粘包半包Netty全搞定.html (0.00 MB)
* 05 12 TCP粘包半包Netty全搞定.mp4 (248.77 MB), 10:48
* 06 13 源码剖析:Netty对处理粘包半包的支持.html (0.00 MB)
* 06 13 源码剖析:Netty对处理粘包半包的支持.mp4 (265.99 MB), 11:09
* 07 14 常用的“二次”编解码方式.html (0.00 MB)
* 07 14 常用的“二次”编解码方式.mp4 (284.59 MB), 11:23
* 08 15 源码剖析:Netty对常用编解码的支持.html (0.00 MB)
* 08 15 源码剖析:Netty对常用编解码的支持.mp4 (310.63 MB), 12:58
* 09 16 keepalive与idle监测.html (0.00 MB)
* 09 16 keepalive与idle监测.mp4 (369.14 MB), 14:59
* 10 17 源码剖析:Netty对keepalive与idle监测的支持.html (0.00 MB)
* 10 17 源码剖析:Netty对keepalive与idle监测的支持.mp4 (335.88 MB), 13:58
* 11 18 Netty的那些“锁”事.html (0.00 MB)
* 11 18 Netty的那些“锁”事.mp4 (512.27 MB), 20:34
* 12 19 Netty如何玩转内存使用.html (0.00 MB)
* 12 19 Netty如何玩转内存使用.mp4 (339.42 MB), 14:30
* 13 20 源码解析:Netty对堆外内存和内存池的支持.html (0.00 MB)
* 13 20 源码解析:Netty对堆外内存和内存池的支持.mp4 (234.27 MB), 09:57
* 03 第三章:Netty源码:从“线”(请求处理)的角度剖析/
* 01 21 Netty代码编译与总览.html (0.00 MB)
* 01 21 Netty代码编译与总览.mp4 (312.42 MB), 14:00
* 02 22 源码剖析:启动服务.html (0.00 MB)
* 02 22 源码剖析:启动服务.mp4 (258.71 MB), 17:19
* 03 23 源码剖析:构建连接.html (0.00 MB)
* 03 23 源码剖析:构建连接.mp4 (185.61 MB), 12:37
* 04 24 源码剖析:接收数据.html (0.00 MB)
* 04 24 源码剖析:接收数据.mp4 (208.66 MB), 13:13
* 05 25 源码剖析:业务处理.html (0.00 MB)
* 05 25 源码剖析:业务处理.mp4 (128.61 MB), 08:37
* 06 26 源码剖析:发送数据.html (0.00 MB)
* 06 26 源码剖析:发送数据.mp4 (268.08 MB), 18:20
* 07 27 源码剖析:断开连接.html (0.00 MB)
* 07 27 源码剖析:断开连接.mp4 (214.29 MB), 14:11
* 08 28 源码剖析:关闭服务.html (0.00 MB)
* 08 28 源码剖析:关闭服务.mp4 (281.20 MB), 14:44
* 04 第四章:Netty实战入门:写一个“玩具”项目/
* 01 29 编写网络应用程序的基本步骤.html (0.00 MB)
* 01 29 编写网络应用程序的基本步骤.mp4 (88.45 MB), 07:39
* 02 30 案例介绍和数据结构设计.html (0.00 MB)
* 02 30 案例介绍和数据结构设计.mp4 (111.22 MB), 10:38
* 03 31 实现服务器端编解码.html (0.00 MB)
* 03 31 实现服务器端编解码.mp4 (158.49 MB), 11:44
* 04 32 实现一个服务器端.html (0.00 MB)
* 04 32 实现一个服务器端.mp4 (102.64 MB), 05:53
* 05 33 实现客户端编解码.html (0.00 MB)
* 05 33 实现客户端编解码.mp4 (53.41 MB), 04:04
* 06 34 完成一个客户端雏形.html (0.00 MB)
* 06 34 完成一个客户端雏形.mp4 (219.27 MB), 12:15
* 07 35 引入响应分发完善客户端.html (0.00 MB)
* 07 35 引入响应分发完善客户端.mp4 (255.53 MB), 14:10
* 08 36 Netty编码中易错点解析.html (0.00 MB)
* 08 36 Netty编码中易错点解析.mp4 (198.52 MB), 13:41
* 05 第五章:Netty实战进阶:把“玩具”变成产品/
* 01 37 调优参数:调整System参数夯实基础.html (0.00 MB)
* 01 37 调优参数:调整System参数夯实基础.mp4 (131.34 MB), 15:10
* 02 38 调优参数:权衡Netty核心参数.html (0.00 MB)
* 02 38 调优参数:权衡Netty核心参数.mp4 (177.08 MB), 15:54
* 03 39 调优参数:图解费脑的三个参数.html (0.00 MB)
* 03 39 调优参数:图解费脑的三个参数.mp4 (109.49 MB), 09:44
* 04 40 跟踪诊断:如何让应用易诊断.html (0.00 MB)
* 04 40 跟踪诊断:如何让应用易诊断.mp4 (220.59 MB), 12:49
* 05 41 跟踪诊断:应用能可视,心里才有底.html (0.00 MB)
* 05 41 跟踪诊断:应用能可视,心里才有底.mp4 (186.81 MB), 11:40
* 06 42 跟踪诊断:让应用内存不“泄露”.html (0.00 MB)
* 06 42 跟踪诊断:让应用内存不“泄露”.mp4 (206.75 MB), 16:49
* 07 43 优化使用:用好自带注解省点心.html (0.00 MB)
* 07 43 优化使用:用好自带注解省点心.mp4 (202.10 MB), 11:59
* 08 44 优化使用:“整改”线程模型让响应健步如飞.html (0.00 MB)
* 08 44 优化使用:“整改”线程模型让响应健步如飞.mp4 (204.36 MB), 10:46
* 09 45 优化使用:增强写,延迟与吞吐量的抉择.html (0.00 MB)
* 09 45 优化使用:增强写,延迟与吞吐量的抉择.mp4 (129.09 MB), 09:30
* 10 46 优化使用:如何让应用丝般“平滑”.html (0.00 MB)
* 10 46 优化使用:如何让应用丝般“平滑”.mp4 (279.13 MB), 16:34
* 11 47 优化使用:为不同平台开启native.html (0.00 MB)
* 11 47 优化使用:为不同平台开启native.mp4 (200.84 MB), 10:39
* 12 48 安全增强:设置“高低水位线”等保护好自己.html (0.00 MB)
* 12 48 安全增强:设置“高低水位线”等保护好自己.mp4 (110.49 MB), 08:07
* 13 49 安全增强:启用空闲监测.html (0.00 MB)
* 13 49 安全增强:启用空闲监测.mp4 (213.77 MB), 13:07
* 14 50 安全增强:简单有效的黑白名单.html (0.00 MB)
* 14 50 安全增强:简单有效的黑白名单.mp4 (203.55 MB), 11:22
* 15 51 安全增强:少不了的自定义授权.html (0.00 MB)
* 15 51 安全增强:少不了的自定义授权.mp4 (206.44 MB), 09:19
* 16 52 安全增强:拿来即用的SSL-对话呈现表象.html (0.00 MB)
* 16 52 安全增强:拿来即用的SSL-对话呈现表象.mp4 (106.51 MB), 08:34
* 17 53 安全增强:拿来即用的SSL-抓包暴露本质.html (0.00 MB)
* 17 53 安全增强:拿来即用的SSL-抓包暴露本质.mp4 (172.44 MB), 10:36
* 18 54 安全增强:拿来即用的SSL-轻松融入案例.html (0.00 MB)
* 18 54 安全增强:拿来即用的SSL-轻松融入案例.mp4 (174.98 MB), 07:53
* 06 第六章:成长为Netty的贡献者/
* 01 55 Cassandra如何使用Netty.html (0.00 MB)
* 01 55 Cassandra如何使用Netty.mp4 (116.24 MB), 08:51
* 02 56 Dubbo如何使用Netty.html (0.00 MB)
* 02 56 Dubbo如何使用Netty.mp4 (144.00 MB), 10:18
* 03 57 Hadoop如何使用Netty.html (0.00 MB)
* 03 57 Hadoop如何使用Netty.mp4 (148.46 MB), 10:15
* 04 58 赏析Netty之美.html (0.00 MB)
* 04 58 赏析Netty之美.mp4 (91.57 MB), 07:55
* 05 59 如何给Netty贡献代码.html (0.00 MB)
* 05 59 如何给Netty贡献代码.mp4 (205.00 MB), 15:08
* 06 60 结课测试&结束语.html (0.01 MB)
* 06 60 结课测试&结束语.mp4 (131.60 MB), 05:26






