第 20 / 20 篇

附录 D 资料来源与继续阅读

本书是面向初学者的原创组织与讲解,参考下列官方资料核对概念和 API,不是官方文档的逐段翻译。检索与访问日期:2026 年 10 月 20 日。在线文档会更新;本书示例依赖固定为 4.1.139.Final。

  1. Netty User guide for 4.x:https://netty.io/wiki/user-guide-for-4.x.html。用于核对启动器、EventLoopGroup、Channel、异步结果和基础 TCP 示例。适合完成第一个程序后对照阅读。

  2. ChannelPipeline API:https://netty.io/4.1/api/io/netty/channel/ChannelPipeline.html。用于核对入站与出站方向,以及 Channel、Context 发起事件的起点差异。对应第 5 章。

  3. LengthFieldBasedFrameDecoder API:https://netty.io/4.1/api/io/netty/handler/codec/LengthFieldBasedFrameDecoder.html。用于核对长度字段偏移、字段宽度、调整值、剥离长度和整帧长度的关系。对应第 6、10 章。

  4. ByteBuf API:https://netty.io/4.1/api/io/netty/buffer/ByteBuf.html。用于核对读写下标、派生缓冲区、copy 与 retained 方法。对应第 7 章。

  5. Reference counted objects:https://netty.io/wiki/reference-counted-objects.html。用于核对引用计数和消息所有权。建议在开始直接操作 ByteBuf 前完整阅读。

  6. IdleStateHandler API:https://netty.io/4.1/api/io/netty/handler/timeout/IdleStateHandler.html。用于核对空闲事件、时间配置和处理方式。对应第 9 章。

  7. Maven Central Netty 版本元数据:https://repo.maven.apache.org/maven2/io/netty/netty-all/maven-metadata.xml。用于检查实际发布版本。取得的元数据显示 4.1.139.Final 与 4.2.19.Final;它不是安全更新公告,生产项目升级前仍需查看发布说明并回归验证。

  8. Netty 官方源码与示例:https://github.com/netty/netty。继续阅读时优先选择与依赖版本相同的标签,例如 netty-4.1.139.Final,再查找 example 模块。

  9. Netty 安全公告:https://github.com/netty/netty/security/advisories。用于后续维护时跟踪受影响版本与修复版本。固定版本有助于复现,不代表可以长期忽略安全更新。

阅读源码建议从你已经用过的类出发:先看 LineBasedFrameDecoder,再看 ByteToMessageDecoder,最后研究 EventLoop 与传输实现。带着具体问题读,例如“没有换行时字节存在哪里”,通常比从第一行一路读到底更有效。