
epoll
发稿咋胸前
嵌入式系统应用 openwrt软件开发
展开
-
epol模型详解
在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。 相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且,在linux/posix_types.h头文件有这样的声明: #define __转载 2015-01-09 11:32:55 · 628 阅读 · 0 评论 -
epoll 详解
epoll是什么?按照man手册的说法:是为处理大批量句柄而作了改进的poll。当然,这不是2.6内核才有的,它是在2.5.44内核中被引进的(epoll(4) is a new API introduced in Linux kernel 2.5.44),它几乎具备了之前所说的一切优点,被公认为Linux2.6下性能最好的多路I/O就绪通知方法。 epoll的相关系统调用转载 2015-01-09 11:28:18 · 538 阅读 · 0 评论 -
高并发的epoll+线程池,epoll在线程池内
epoll是linux下高并发服务器的完美方案,因为是基于事件触发的,所以比select快的不只是一个数量级。 单线程epoll,触发量可达到15000,但是加上业务后,因为大多数业务都与数据库打交道,所以就会存在阻塞的情况,这个时候就必须用多线程来提速。 epoll在线程池内,测试结果2000个/s 增加了网络断线后的无效socket检测。 测试工具:stressmark转载 2015-01-09 11:30:10 · 485 阅读 · 0 评论