NIO框架Netty学习路线及视频分享

什么是NIO

NIO,即New IO。那么老的IO是什么,例如我们用FileInputStream和FileOutputStearn读写文件就是IO。

NIO和IO区别

  1. IO当一个线程调用read() 或 write()时,该线程被阻塞,直到有数据读取,NIO没有数据可用时,就什么都不会获取,而不是保持线程阻塞,这样就能进行I/O多路复用,提高性能。
  2. IO是面向流的,NIO是面向缓冲区
  3. NIO可以允许单独线程来监视多个输入通道,当通道有数据可处理时去选择

为什么选择Netty

在java的标准类库中,在java.nio包下提供了nio的实现方法,但是偏向于底层开发,让开发者使用起来难度较大,而且里面的一些功能无法满足灵活的需求。
Netty作为一个框架,不仅提供了简单的API,降低了开发门槛,而且其提供了更为灵活的内存管理和众多的编码器和解码器,能更好的管理分配内存和解决粘包、拆包问题。

Netty的学习路线

  1. I/O基础及I/O模型
  2. NIO三大组件
  3. Netty内存管理
  4. Netty内存池原理及底层
  5. Netty的内存分配和粘包、拆包
  6. Netty的服务端和客户端构建
  7. Netty的channel、handler、解码器和编码器

学习视频分享

关注公众号 “入门到放弃之路”,后台回复关键字 Netty 获取
NIO框架Netty学习路线及视频分享NIO框架Netty学习路线及视频分享
NIO框架Netty学习路线及视频分享