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