Netty是nio的中间件,而且对java的nio进行了封装。
了解netty之前先了解一下IO模型
Linux IO模型
阻塞型IO:调用读取命令后,一直等待到数据包到达并进入到进程的缓存区或则发生错误。
非阻塞型IO:如果缓存区没有数据,则返回错误。非阻塞IO一般会不停的轮训,查看缓存区是否有数据到来。
IO复用模型:进程阻塞在select操作上,监控多个文件是否就绪。如果就绪,进行回调。
信号驱动IO模型
调用内核命令后立刻返回,等待数据到达之后,内核会给进程发一个信号。进程开始读取信息。
异步IO
通知内核进行IO操作,完成之后告知进程
网友评论