Netty源码03-Netty总体框架

Netty总体框架

前面两篇文章对Java NIO进行了详细的介绍和分析,也给下面分析Netty源码打下必定的基础html

netty框架介绍:
https://www.cnblogs.com/imstudy/p/9908791.html
https://blog.csdn.net/u013857458/article/details/82527722
Java已经有了一个原生的NIO框架,为何还会出现Netty呢,这个缘由主要有两个:
  • Java的NIO还不够高效,其底层使用selector,而Netty使用Linux下最高效的I/O模式epoll
  • Selector多路复用的开发模式较为复杂,须要在程序中本身轮询,并且SelectionKey须要本身进行删除的管理,比较容易出错,并且由不少阻塞操做(select),Java自带的AIO更加难用。Netty是全异步操做,而且将底层IO操做所有封装,简化开发
  • Java的NIO内存管理采用ByteBufferByteBuffer是出了名的难用,在使用的时候要是忘记flip()很容易出错。Netty提供的ByteBuf就好用了不少,其采用读写双Index,更加易用
相关文章
相关标签/搜索