Netty 是一个异步事件驱动的网络应用框架,主要用于可维护的高性能协议服务器和客户端的快速开发。Netty 4.2.10.Final 现已发布,这是今年的第一个版本。修复了一些错误,同时也修复了 4.2.9.Final 版本引入的一个回归问题,官方建议尽快升级。
一些更新要点包括:
- 重新实现 IORING_OP_SENDMSG_ZC ( #16130 )
- codec-dns:在 DNS 记录解码期间解压缩 MX RDATA 交换域名(#16040)
- 自适应分配器中大缓冲区的 Buddy allocation(#16053)
- 提高自适应分配器线程局部性能(#15741)
- 当 noUnsafe 为 true 时,避免 CompositeByteBuf 中出现 UnsupportedOperationException 异常(#16097)
- NioDatagramChannel.block(...) 在失败时不会提前返回(#16044)
- 将默认 maxFieldSectionSize 设置为 16MB ( #16088 )
- 将 QUIC 流和字段段大小限制为协议最大值(#16117)
- 避免不可移植的 malloc-of-zero 行为(#16055)
- 加快 AdaptiveByteBuf.setBytes 的速度(#15736)
- 无需分配 AdaptiveByteBuf::setBytes(byte[]) ( #16058 )
- 修复:防止在无法设置 IpMulticastAll 时出现 DGC 初始化失败(#16104)
- 改进 large-size buddy allocator 的数据块选择(#16179)
- 修复自适应分配器无法检测到分配失败的错误(#16200)
- 避免丢失原始读取异常(#16199)
- 修复使用 ReadOnlyAbstractByteBuf 时可能出现的 ClassCastException 异常(#16188)
- Quiche 更新至 0.24.8 ( #16182 )
- 修复处理 id 到通道映射时不正确的断言(#16163)
- 正确返回所有 TransportParameters(#16162)
- 减少对 DefaultHeaders::containsValue 的内存分配(#15843)
- SslHandler:仅当 EventLoop 尚未关闭时才恢复 EventLoop(#16144)
- 确保 ChannelOutboundHandler 使用的 ChannelPromise 始终在预期的线程中完成(#16052)
详情可查看:https://netty.io/news/2026/02/05/4-2-10.html