NIO简单使用

之前总结了一篇BIO简单使用,BIO在长链接场景,一个连接占用一个线程。在短连接场景,虽然可以通过线程池优化,但是CPU会在不同的CPU不停的切换。因此BIO并不适用于高并发。Oracle在JDK1.4中引入了NIO的SDK,NIO与BIO不同之处在于NIO使用Linux中的IO多路复用技术。IO多路复用技术是将多个阻塞IO复用到同一个Selector阻塞上。本篇文章主要记录NIO的学习过程。

阅读更多

BIO简单使用

从本章开始,后面一段时间都学习网络和IO方面的知识。网络和IO都是知识盲区,慢慢整理,争取把这部分梳理清楚,首先IO是Input和Output的简写。代表输入和输出。而从位置来区分,又分为本地IO和网络IO。本地IO代表本机系统内的设备进行通信,网络代表本机系统和网络上的系统进行通信。而网络通讯模型又分为BIO(同步阻塞IO),NIO(同步非阻塞IO),AIO(异步非阻塞IO)。本章主要记录BIO的简单使用。

阅读更多