【操作系统】I/O多路复用网络模型

一、I/O多路复用简介

定义:指内核一旦发现进程指定一个或多个IO条件准备读取,就通知该进程。

适用场合

1、当客户处理多个描述符时(一般是交互式输入和网络套接口),必须使用IO复用;
2、当一个客户同时处理多个套接口时,可能但很少出现;
3、TCP服务器纪要处理监听套接口,又要处理已连接套接口;
4、一个服务器既要处理TCP,又要处理UDP;
5、一个服务器要处理多个服务或多个协议。

I/O多路复用 VS 多进程/多线程:IO多路复用技术最大优势是系统开销小,系统不必创建进程/线程,也不必维护,大大减少了开销。

相关内容: Linux 网络模型,也就是现代高性能 Server 底层实现 epoll 等网络模型,包括但不限于 Redis、Nginx、Gunicorn、libuv 等底层,必须掌握,推荐《unix 高级网络编程》。

二、select、poll、epoll详解

你可能感兴趣的:(操作系统)