一、簡(jiǎn)介

     nginx是一款非常受歡迎的軟件,具備高性能、模塊化可定制的良好特性。之前寫了一篇nginx的http模塊分析的文章,主要對(duì)http處理模塊進(jìn)行了分析講解,同時(shí)也涉及了nginx模塊化的內(nèi)容。至于nginx高性能的原因,希望能夠在在這篇文章中就自己對(duì)于這方面的理解給大家分享一下。

     nginx的event處理模型包含兩個(gè)方面:高效的IO處理函數(shù),事件的異步處理(可選的線程池)。

 

二、IO復(fù)用函數(shù)

     nginx中包含epoll、poll、select、devpoll、kqueue、iocp等不同的IO處理函數(shù)。下面就常見的epoll、poll、select來做簡(jiǎn)單的分析


select

poll

epoll

fd數(shù)量

用fd_set類型來存儲(chǔ)fd,每個(gè)fd占一位,fd_set在linux系統(tǒng)中默認(rèn)1024位,所以select最多支持1024個(gè)fd(可以通過修改FD_SETSIZE來增加)

采用pollfd結(jié)構(gòu)體來存儲(chǔ)fd,因此支持的最大fd數(shù)目跟系統(tǒng)內(nèi)存有關(guān)(支持存儲(chǔ)多少個(gè))

采用epoll_event存儲(chǔ),因此也只與內(nèi)存有關(guān)

通知方式

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式

我想了解如何學(xué)習(xí)

姓名:
手機(jī):
留言: