epoll

2020-02-13  本文已影响0人  栀心_d553

什么是epoll?

eporll.png

首先,有一个特殊的内存(绿色的部分),这个内部是应用程序(http服务器)和kernel共享的(也就是内存映射)

第二点,在四个小方块内存里面,所有的监听的、判断是否有数据到来 的 这些套接字对应的文件描述符,在去监测他们的时候,不用挨个遍历的方式,而是事件通知的方式(采用基于事件的就绪通知方式),什么时候收到数据,什么时候处理、通知。

不用epoll的话,原来的单线程单进程的做法,瓶颈在什么地方?

效率搞.png
原来是轮询的方式做的.瓶颈就在于,挨个去遍历,不管有没有询问道数据,都要去回复。epoll只回复谁,数据好了,可以收了。如果没有数据,就不管。
上一篇 下一篇

猜你喜欢

热点阅读