本文首先對epoll模型的實現(xiàn)原理進(jìn)行了講解,然后從源碼的層面對nginx是如何基于epoll模型實現(xiàn)事件驅(qū)動模式的原理進(jìn)行了講解。
epoll是一種基于事件驅(qū)動的模型,其是nginx能夠高效處理客戶端請求的重要原因之一。從流程上來講,epoll模型的使用主要分為三步:epoll句柄的創(chuàng)建,監(jiān)聽文件描述符的添加和等待事件的觸發(fā),本文將介紹nginx是如何基于這三個步驟實現(xiàn)客戶端請求的高效處理的。