Netty 到底是异步 IO 还是多路复用 IO

105次阅读
没有评论

这个问题容易混,是因为大家把内核里的 IO 模型和框架对外提供的编程体验放在一起说了。Netty 底层依赖 Java NIO,在常见 Linux 环境下本质上跑在多路复用能力之上,但在使用方式上又呈现出明显的异步事件驱动特征。

底层为什么说它是多路复用

Netty 的核心能力建立在 Selector 这类机制上。一个线程可以同时关注很多连接,等内核通知哪些连接可读可写后再统一处理,这就是多路复用思路。

为什么又常被说成异步

因为业务代码通常不是自己阻塞等数据,而是注册回调、监听事件、收到通知后再处理。从开发者视角看,Netty 更像异步非阻塞框架。

两种说法怎么统一理解

可以把多路复用理解成底层 IO 实现,把异步事件驱动理解成框架层暴露出的编程模型。两者不冲突,只是描述的层次不同。

结论

Netty 底层主要依赖多路复用 IO,对外则提供异步、非阻塞、事件驱动的开发体验。

正文完
 0
bdspAdmin
版权声明:本站原创文章,由 bdspAdmin 于2026-03-12发表,共计369字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)