原生NIO存在的问题:
1、NIO的类库和API繁琐,不易使用
2、需要熟悉Java多线程编程
3、工作量和难度大,例如:客户端中断重连、网络闪断、半包读写、网络拥塞和异常流的处理
Netty优点:
1、使用方便
2、高性能、吞吐量更高;延迟低,减少资源消耗
3、支持各种传输类型的数据
线程模型:
传统阻塞I/O服务模型
Reactor(单Reactor单线程、单Reactor多线程、主从Reactor多线程)
Netty线程模型:基于主从Reactor多线程的改造
传统阻塞I/O服务模型:
每个连接都需要独立的线程完成数据的读写和返回,占用资源和浪费资源
本文深入探讨了原生NIO存在的问题,如类库和API繁琐、多线程编程复杂及处理网络异常困难等,并对比介绍了Netty框架的优点,包括使用方便、高性能、支持多种数据传输类型。同时,文章解析了Netty的线程模型,即基于主从Reactor多线程的优化模型,相较于传统阻塞I/O服务模型,Netty能够更高效地处理大量并发连接。
9012

被折叠的 条评论
为什么被折叠?



