epoll 和 kqueue 之间有什么主要的性能差异吗?

发布于 2024-09-16 07:27:13 字数 243 浏览 8 评论 0原文

我的开发机器是MacBook(当然有kqueue)。然而,在生产中我们运行 Linux(当然使用 epoll)。显然,要了解代码的性能特征,我需要使用 epoll 运行它。也就是说,我在 kqueue 下看到的性能与我在 epoll 下看到的性能相当接近吗?或者是否存在性能可能显着不同的情况?在大多数情况下,kqueue 和 epoll 在性能方面似乎非常相似,但我还没有真正进行过非常彻底的测试。

如果有什么不同的话,我在 Python 中使用龙卷风。

My development machine is a MacBook (which of course has kqueue). However, in production we're running Linux (which of course uses epoll). Obviously, to know the performance characteristics of my code I need to run it using epoll. That said, is performance that I see under kqueue a decent approximation of what I'll see with epoll? Or are there any situations where performance may be significantly different? For the most part, it seems that kqueue and epoll are pretty much similar in terms of performance, but I haven't really done very thorough testing.

If it makes a difference, I'm using tornado in Python.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

浅听莫相离 2024-09-23 07:27:13

根据伯克利大学的说法,kqueue 优于 epoll,主要是因为 epoll 不支持在单个系统调用中进行多个兴趣更新,而 kqueue 可以使用 kevent() 来做到这一点。

还有一篇技术论文介绍了两者之间的差异和性能比较。

http://www.eecs.berkeley。 edu/~sangjin/2012/12/21/epoll-vs-kqueue.html

kqueue outperforms epoll according to Berkeley University mainly because epoll does not support multiple interest updates in a single system call, while kqueue can do that using kevent().

There is a technical paper on the differences between the 2 and performance comparison also.

http://www.eecs.berkeley.edu/~sangjin/2012/12/21/epoll-vs-kqueue.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文