IO
是学习编程绕不过的话题,从学习Java
中BIO
到NIO
,再到Nginx
、Redis
、kafka
….IO
一直是非常热门的话题
❓为什么他们那么快?
无论是C语言写的Redis还是Java写的kafka,我们经常看到的字眼是使用了非阻塞的IO模型。说明这是和语言无关的特性,值得去学习一下
📌 有几点共识写在前面
1.应用程序的IO都是操作系统去实现的,本质上就是使用OS的API来完成IO 2.Linux没有统一好异步非阻塞的IO模型
大纲
IO模型
在《UNIX网络编程•卷1:套接字联网API(第三版)》[1]中,UNIX网络模型如下