BIO、NIO、AIO:
https://www.iqiyi.com/v_19rqytlvf8.html(视频)
https://www.jianshu.com/p/a660c17bb9ea
https://www.ibm.com/developerworks/cn/education/java/j-nio/j-nio.html
https://segmentfault.com/a/1190000012976683
https://blog.youkuaiyun.com/TimeMagician/article/details/81017800
Netty
- 是一个提供异步事件驱动的网络应用框架,用以快速开发高性能、高可靠的网络服务器和客户端程序。Netty简化了网络程序的开发,是很多框架和公司都在使用的技术。更是面试的加分项。Netty并非横空出世,它是在BIO,NIO,AIO演变中的产物,是一种NIO框架。
NIO:
读
- (1) 从 FileInputStream 获取 Channel
- (2) 创建 Buffer,
- (3) 将数据从 Channel 读到 Buffer中。
写
- 首先从 FileOutputStream 获取一个通道:
- 下一步是创建一个缓冲区并在其中放入一些数据 - 在这里,数据将从一个名为 message 的数组中取出,这个数组包含字符串 "Some bytes" 的 ASCII 字节(本教程后面将会解释 buffer.flip() 和 buffer.put() 调用)。
- 最后一步是写入缓冲区中:
读写
- 首先创建一个 Buffer,然后从源文件中将数据读到这个缓冲区中,然后将缓冲区写入目标文件。这个程序不断重复 ― 读、写、读、写 ― 直到源文件结束。