说说BIO/NIO/AIO的区别?

BIO:同步阻塞IO,每⼀个客户端连接,服务端都会对应⼀个处理线程,对于没有分配到处理线程的连接就会被阻塞或者拒绝。相当于是⼀个连接⼀个线程。

NIO:同步⾮阻塞IO,基于Reactor模型,客户端和channel进⾏通信,channel可以进⾏读写操作,通过多路复⽤器selector来轮询注册在其上的channel,⽽后再进⾏IO操作。这样的话,在进⾏IO操作的时候再⽤⼀个线程去处理就可以了,也就是⼀个请求⼀个线程。

AIO:异步⾮阻塞IO,相⽐NIO更进⼀步,完全由操作系统来完成请求的处理,然后通知服务端开启线程去进⾏处理,因此是⼀个有效请求⼀个线程。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容