epoll 为什么能提高网络性能

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

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

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

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

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

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

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

相关推荐
青梅橘子皮6 小时前
Linux---基本指令
linux·运维·服务器
REDcker6 小时前
Linux信号机制详解 POSIX语义与内核要点 sigaction与备用栈实践
linux·运维·php
cui_ruicheng7 小时前
Linux进程间通信(三):System V IPC与共享内存
linux·运维·服务器
蚰蜒螟7 小时前
深入 Linux 内核同步机制:从 futex 到 spinlock 的完整旅程
linux·windows·microsoft
运维全栈笔记7 小时前
Linux安装配置Tomcat保姆级教程:从部署到性能调优
linux·服务器·中间件·tomcat·apache·web
dllmayday8 小时前
Linux 上用终端连接 WiFi
linux·服务器·windows
ACP广源盛139246256739 小时前
IX8024与科学大模型的碰撞@ACP#筑牢科研 AI 算力高速枢纽分享
运维·服务器·网络·数据库·人工智能·嵌入式硬件·电脑
Empty-Filled9 小时前
AI生成测试用例功能怎么测:一个完整实战案例
网络·人工智能·测试用例
峥无10 小时前
Linux系统编程基石:静态库·动态库·ELF文件·进程地址空间全景图
linux·运维·服务器
用户23678298016810 小时前
从 chmod 755 说起:Unix 文件权限到底是怎么算的?
linux