poll select linux怎么样,它是做什么的,以后工作好吗?
linux怎么样,它是做什么的,以后工作好吗?
作为一名DBA操作和维护工程师,
学习Linux有很多用处,如果你想在Linux上有一个很好的发展。Linux是必须的
掌握Linux是比较容易找到工作的
严格来说,这种说法是不准确的。Epoll的性能并不总是比select好。首先,我们需要了解select和Epoll的基本原理。
假设我们现在有100个套接字连接。select的方法是每隔一段时间轮询这100个连接,以确定是否存在网络事件。如果有,它会处理它们。
Epoll的方法是创建一个链表,然后告诉操作系统,如果100个连接中的任何一个发生网络事件,它将被放入链表中。然后epoll每隔一段时间就会检查链表中是否有元素,如果有则进行处理。
与select相比,epoll大大减少了空轮询次数,提高了轮询效率。同时,epoll使用MMAP对其进行优化,因为它需要在select轮询期间将所有连接的FD从内核复制到用户空间,这会增加IO开销。
然而,我们不能简单地说谁更好。
例如,如果100个连接的网络活动非常频繁,则select的每次轮询将很少或没有空轮询,select的无用功能将非常少。相反,epoll的性能会因为多了一步操作而变差。
因此,select适用于业务时间较短的短链接,如通用HTTP服务。Epoll适用于连接时间长但网络活动不频繁的场景,如聊天室。
poll select linux event事件 select和epoll区别
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。