資料介紹
nginx 由于出色的性能,在世界范圍內(nèi)受到了越來(lái)越多人的關(guān)注,在淘寶內(nèi)部它更是被廣泛的使用,眾多的開(kāi)發(fā)以及運(yùn)維同學(xué)都迫切的想要了解 nginx 模塊的開(kāi)發(fā)以及它的內(nèi)部原理,但是國(guó)內(nèi)卻沒(méi)有一本關(guān)于這方面的書(shū),源于此我們決定自己來(lái)寫(xiě)一本。本書(shū)的作者為淘寶核心系統(tǒng)服務(wù)器平臺(tái)組的成員,本書(shū)寫(xiě)作的思路是從模塊開(kāi)發(fā)逐漸過(guò)渡到 nginx 原理剖析。書(shū)籍的內(nèi)容會(huì)定期在這里更新,歡迎大家提出寶貴意見(jiàn),不管是本書(shū)的內(nèi)容問(wèn)題,還是字詞錯(cuò)誤,都?xì)g迎大家提交 issue(章節(jié)標(biāo)題的左側(cè)有評(píng)注按鈕),我們會(huì)及時(shí)的跟進(jìn)。
眾所周知,nginx 性能高,而 nginx 的高性能與其架構(gòu)是分不開(kāi)的。那么 nginx 究竟是怎么樣的呢?這一節(jié)我們先來(lái)初識(shí)一下 nginx 框架吧。 nginx 在啟動(dòng)后,在 unix 系統(tǒng)中會(huì)以 daemon 的方式在后臺(tái)運(yùn)行,后臺(tái)進(jìn)程包含一個(gè) master 進(jìn)程和多個(gè) worker 進(jìn)程。我們也可以手動(dòng)地關(guān)掉 daemon 模式,讓 nginx 在前臺(tái)運(yùn)行,這個(gè)時(shí)候,nginx 就是一個(gè)單進(jìn)程的,很顯然,生產(chǎn)環(huán)境下我們肯定不會(huì)這么做,所以關(guān)掉 daemon 的方式,一般是用來(lái)調(diào)試用的,在后面的章節(jié)里面,我們會(huì)詳細(xì)地講解如何調(diào)試 nginx。所以,我們可以看到,nginx 是以多進(jìn)程的方式來(lái)工作的,當(dāng)然 nginx 也是支持多線程的方式的,只是我們主流的方式還是多進(jìn)程的方式,也是 nginx 的默認(rèn)方式。nginx 采用多進(jìn)程的方式有諸多好處,所以我就主要講解 nginx 的多進(jìn)程模式吧。剛才講到,nginx 在啟動(dòng)后,會(huì)有一個(gè) master 進(jìn)程和多個(gè) worker 進(jìn)程。master 進(jìn)程主要用來(lái)管理 worker 進(jìn)程,包含:接收來(lái)自外界的信號(hào),向各 worker 進(jìn)程發(fā)送信號(hào),監(jiān)控 worker 進(jìn)程的運(yùn)行狀態(tài),當(dāng) worker 進(jìn)程退出后 (異常情況下),會(huì)自動(dòng)重新啟動(dòng)新的 worker 進(jìn)程。而基本的網(wǎng)絡(luò)事件,則是放在 worker 進(jìn)程中來(lái)處理了。多個(gè) worker 進(jìn)程之間是對(duì)等的,他們同等競(jìng)爭(zhēng)來(lái)自客戶(hù)端的請(qǐng)求,各進(jìn)程互相之間是獨(dú)立的。一個(gè)請(qǐng)求,只可能在一個(gè) worker 進(jìn)程中處理,一個(gè) worker 進(jìn)程,不可能處理其它進(jìn)程的請(qǐng)求。worker 進(jìn)程的個(gè)數(shù)是可以設(shè)置的,一般我們會(huì)設(shè)置與機(jī)器 cpu 核數(shù)一致,這里面的原因與 nginx 的進(jìn)程模型以及事件處理模型是分不開(kāi)的。nginx 的進(jìn)程模型,可以由下圖來(lái)表示:
- 電子電路從入門(mén)到精通電子版下載 0次下載
- 現(xiàn)代無(wú)線電實(shí)驗(yàn)的PDF電子書(shū)免費(fèi)下載 285次下載
- 半導(dǎo)體收音機(jī)淺談的PDF電子書(shū)免費(fèi)下載 171次下載
- 光學(xué)諧振腔的圖解分析與設(shè)計(jì)方法的PDF電子書(shū)免費(fèi)下載 132次下載
- MATLAB函數(shù)速查手冊(cè)PDF電子書(shū)免費(fèi)下載 150次下載
- 電子管數(shù)據(jù)手冊(cè)合集PDF電子書(shū)免費(fèi)下載 82次下載
- 高級(jí)語(yǔ)言程序設(shè)計(jì)從菜鳥(niǎo)到大師深入C語(yǔ)言程序設(shè)計(jì)PDF電子書(shū)免費(fèi)下載 181次下載
- FPGA入門(mén)教程之HELLO FPGA軟件工具篇PDF電子書(shū)免費(fèi)下載 90次下載
- 寫(xiě)給文科生看的編程入門(mén)Python管窺PDF電子書(shū)免費(fèi)下載 7次下載
- python入門(mén)教材電子書(shū)合集免費(fèi)下載 31次下載
- 開(kāi)關(guān)電源設(shè)計(jì)從入門(mén)到精通PDF電子書(shū)免費(fèi)下載 679次下載
- 開(kāi)關(guān)電源設(shè)計(jì)從入門(mén)到精通PDF電子書(shū)免費(fèi)下載 82次下載
- 跟老齊學(xué)Python從入門(mén)到精通PDF電子書(shū)免費(fèi)下載 34次下載
- 電冰箱快速維修PDF電子書(shū)免費(fèi)下載 51次下載
- 家電維修1128例PDF電子書(shū)免費(fèi)下載 207次下載
- RK3562開(kāi)發(fā)板:安卓Linux開(kāi)發(fā)從入門(mén)到精通(二) 1158次閱讀
- RK3562開(kāi)發(fā)板:安卓Linux開(kāi)發(fā)從入門(mén)到精通(一) 1139次閱讀
- Nginx的特點(diǎn)和作用 Nginx常用命令和核心配置 749次閱讀
- 搭建Keepalived+Lvs+Nginx高可用集群負(fù)載均衡 3084次閱讀
- 電子書(shū)閱讀器內(nèi)置鋰電池供電自動(dòng)切換電路 2021次閱讀
- Nginx文件強(qiáng)制下載的配置方法 1579次閱讀
- Nginx入門(mén)指南 803次閱讀
- Nginx如何監(jiān)控 1436次閱讀
- 堆棧溢出技術(shù)從入門(mén)到精通 2656次閱讀
- 機(jī)器學(xué)習(xí)入門(mén)寶典《統(tǒng)計(jì)學(xué)習(xí)方法》的介紹 4682次閱讀
- 最新電子書(shū)拆解評(píng)測(cè)系列報(bào)道(一):打開(kāi)你的眼界 1.2w次閱讀
- Board從入門(mén)到精通系列(八) 2717次閱讀
- Board從入門(mén)到精通系列(七) 1611次閱讀
- Board從入門(mén)到精通系列(六) 1900次閱讀
- Board從入門(mén)到精通(五):軟硬件協(xié)同設(shè)計(jì) 2192次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開(kāi)關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開(kāi)發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論