前言
- Netty 体系庞大而复杂,所以会分成几篇文章进行讲解。深入理解需要有一定的基础和耐心,参照源码反复推敲才行
- 为了方便阅读,本篇的源码部分只保留核心部分,比较方便阅读,不重要的部分会删掉,看完整版需要自己打开IDEA哈
- 先上一张自己画的流程图

原理解析
所有的Netty服务端程序通常都有这句 ServerBootstrap.bind(),它的内部会调用 initAndRegister() 方法,在 AbstractBootstrap.java 找到这段代码:
final ChannelFuture initAndRegister()