Netty-JAVA基础实现,AIO基础
【推荐阅读】微服务还能火多久?>>> AIO是在NIO基础上实现的异步非阻塞通信 Windows下提供了IOCP技术,I/O Completion Port,称为I/O完成端口。IOCP是一个消息队列。当监听到客户请求的时候就把请求加到消息队列中。然后已有的线程去逐一处理,处理完成后需要得到反馈的工作线程就会收到通知,然后前去处理。当没有请求加入到消息队列的时候,相应的线程也就处理挂起的状态进行等待。 所以Windows下算是有实际意义上的异步非阻塞 同步异步是消息通信的机制 阻塞非阻塞是事件处理 阻塞:死等着被调用方回信,中间什么不干 非阻塞:没收到被调用方回信时,中间干点别的 同步:一会儿一趟,没有结果就反复问 异步:问完等对方通知反馈 同步阻塞:到服务台反复问讯,死等服务生反馈 同步非阻塞:到服务台反复问询,在等服务生反馈期间玩手机 异步阻塞:到服务台问讯,死等服务生反馈,服务生确认后通知我 异步非阻塞:到服务台问询,问完就玩手机去了,服务生确认后通知我 Linux用epoll进行相关实现 AIO服务端实现 package netty.aio; /** AIO模式服务端实现 @author zhousjmas@hotmail.com */ public class AIOSocketServerMain { public static void main(String[]