网络IO模型?什么是多路复用IO?select和epoll 的差别?

同步阻塞IO-BIO

实际使用场景:在Java中使用线程池的方式去连接数据库,使用的就是同步阻塞IO模型

同步非阻塞 IO-NIO(New IO)

如果涉及到IO操作,那么当前的线程不会被阻塞,而是会去处理其他业务代码,然后等过段时间再来查询 IO 交互是否完成

异步非阻塞 IO-AIO

IO操作已经完成后,再给线程发出通知

IO 多路复用

一个线程处理多个IO流;

在Linux中,操作系统提供了select、poll 和 epoll 三种 IO多路复用机制

select机制: 可以监听多少个socket? -- 1024 -- 需要遍历fd集合,才能找到就绪的描述符

poll机制:和select差不多,需要遍历fd集合,才能找到就绪的描述符。

epoll机制:可以监听就绪的fd

参考:https://zhuanlan.zhihu.com/p/462924941

相关推荐
瀚高PG实验室5 小时前
审计策略修改
网络·数据库·瀚高数据库
forAllforMe6 小时前
etherCAT的协议VoE,FoE,EoE,CoE的概念和区别
网络
大数据新鸟6 小时前
操作系统之虚拟内存
java·服务器·网络
迷藏4947 小时前
**eBPF实战进阶:从零构建网络流量监控与过滤系统**在现代云原生架构中,**网络可观测性**和**安全隔离**已成为
java·网络·python·云原生·架构
zmj3203247 小时前
汽车电子内部网络架构图
网络·汽车
汽车仪器仪表相关领域8 小时前
NHFID-1000型非甲烷总烃分析仪:技术破局,重构固定污染源监测新体验
java·大数据·网络·人工智能·单元测试·可用性测试·安全性测试
卤炖阑尾炎8 小时前
Python 网络编程实战:从 TCP/UDP 基础到高并发服务器开发
网络·python·tcp/ip
乾元8 小时前
《硅基之盾》番外篇二:算力底座的暗战——智算中心 VXLAN/EVPN 架构下的多租户隔离与防御
网络·人工智能·网络安全·架构
智擎软件测评小祺8 小时前
渗透测试报告关键模块拆解
网络·web安全·渗透测试·测试·检测·cma·cnas
W.W.H.9 小时前
嵌入式常见的面试题1
linux·网络·经验分享·网络协议·tcp/ip