epoll 为什么能提高网络性能

epoll⾼性能最根本的原因是,epoll 可以同时监听多个fd事件,这在很⼤程度地减少了⽆⽤的进程上下⽂切换,让进程更专注地处理⽹络请求。

其实在内核的硬、软中断上下⽂中,包从⽹卡接收过来进⾏处理,然后放到socket的接

收队列。再找到socket关联的epiter,并把它添加到epol对象的就绪链表中。

在⽤户进程中,通过调⽤epoll wait来 查看就绪链表中是否有事件到达,如果有,直

接取⾛进⾏处理。处理完毕再次调⽤epoll_ wait。 在⾼并发的实践中,只要活⼉⾜够多,

epoll walt根本不会让进程阻塞。⽤户进程会⼀直⼲活⼉,⼀直⼲活⼉,直到epoll watt⾥

实在没活⼉可⼲的时候才主动让出CPU。这就是epoll⾼效的核⼼原因所在!

相关推荐
数据与人工智能律师12 分钟前
数据淘金时代:公开爬取如何避开法律雷区?
网络·人工智能·算法·云计算·区块链
天朝八阿哥13 分钟前
Debian开机自动挂载ntfs分区
linux·后端·debian
星梦客16 分钟前
VMware 虚拟机开机自启动配置指南
linux·运维·服务器
canyuemanyue17 分钟前
WSL2 默认使用 NAT 网络
网络
上海云盾第一敬业销售20 分钟前
什么是渗透测试,对网站安全有哪些帮助?
网络·安全·web安全
网硕互联的小客服24 分钟前
RAID 阵列有哪些?分别有什么作用?
运维·服务器·网络·数据库·网络安全·raid
_小猪沉塘27 分钟前
【Create my OS】从零编写一个操作系统
linux·操作系统·unix
Code_Geo36 分钟前
基于 HTTP 的单向流式通信协议SSE详解
网络·网络协议·http
坠金37 分钟前
部署http服务
网络·网络协议·http
IT技术学习1 小时前
eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)
网络