最全面的Nginx工作原理讲解,Nginx学习笔记——来自动力节点
Nginx是一款輕量級的Web服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,并在一個BSD-like協議下發行。由俄羅斯的程序設計師IgorSysoev所開發,供俄國大型的入口網站及搜索引擎Rambler(俄文:Рамблер)使用。其特點是占有內存少,并發能力強,事實上nginx的并發能力確實在同類型的網頁服務器中表現較好。
Nginx工作原理及安裝配置
Nginx由內核和模塊組成,其中,內核的設計非常微小和簡潔,完成的工作也非常簡單,僅僅通過查找配置文件將客戶端請求映射到一個location block(location是Nginx配置中的一個指令,用于URL匹配),而在這個location中所配置的每個指令將會啟動不同的模塊去完成相應的工作。
Nginx的模塊從結構上分為,核心模塊、基礎模塊和第三方模塊:
- 核心模塊:HTTP模塊、EVENT模塊和MAIL模塊
- 基礎模塊:HTTP Access模塊、HTTP FastCGI模塊、HTTP Proxy模塊和HTTP Rewrite模塊,
- 第三方模塊:HTTP Upstream Request Hash模塊、Notice模塊和HTTP Access Key模塊。
Nginx的高并發得益于其采用了epoll模型,與傳統的服務器程序架構不同,epoll是linux內核2.6以后才出現的。Nginx采用epoll模型,異步非阻塞,而Apache采用的是select模型
Select特點:select選擇句柄的時候,是遍歷所有句柄,也就是說句柄有事件響應時,
select需要遍歷所有句柄才能獲取到哪些句柄有事件通知,因此效率是非常低。
epoll的特點:epoll對于句柄事件的選擇不是遍歷的,是事件響應的,就是句柄上事件來就馬上選擇出來,不需要遍歷整個句柄鏈表,因此效率非常高。
動力節點的Nginx教程,將全面講授Nginx的配置與使用、企業應用實踐(靜態代理、負債均衡、動靜分離、虛擬主機等),可以快速地掌握Nginx這樣一款高性能的web反向代理服務器。
- Nginx應用實戰視頻教程
https://www.bilibili.com/video/BV11V411C7r9
- Nginx應用實戰教程配套資料下載
http://www.bjpowernode.com/?csdn
適用人群
高性能Web服務器維護人員,對互聯網服務器感興趣的程序開發者。
Nginx學習前提
學習本教程前,我們假定您已經能夠搭Nginx服務器,并能夠進行簡單常規的操作。
Nginx基本特點
- 處理靜態文件,索引文件以及自動索引;打開文件描述符緩沖。
- 無緩存的反向代理加速,簡單的負載均衡和容錯。
- FastCGI,簡單的負載均衡和容錯。
- 模塊化的結構。包括gzipping,byte ranges,chunked responses,以及SSI-filter等filter。如果由FastCGI或其它代理服務器處理單頁中存在的多個SSI,則這項處理可以并行運行,而不需要相互等待。
- 支持SSL和TLSSNI。
1.Nginx:Nginx介紹
2.Nginx:反向代理
3.Nginx:正向代理
4.Nginx:安裝-安裝前的準備
5.Nginx:安裝
6.Nginx:命令-啟動Nginx
7.Nginx:命令-關閉Nginx
8.Nginx:命令-其他命令
9.Nginx:配置文件解讀-基礎配置
10.Nginx:配置文件解讀-工作模式和鏈接數
11.Nginx:配置文件解讀-HTTP服務器
12.Nginx:部署靜態Web服務器
13.Nginx:負載均衡-硬件和軟件負載
14.Nginx:負載均衡部署myweb項目
15.Nginx:負載均衡策略介紹
16.Nginx:負載均衡策略實現
17.Nginx:負載均衡-其他配置
18.Nginx:靜態代理
19.Nginx:動靜分離-部署p2p項目
20.Nginx:動靜分離-p2p項目負載均衡
21.Nginx:動靜分離-p2p項目實現動靜分離
22.Nginx:虛擬主機應用場景
23.Nginx:虛擬主機部署多城市站點
總結
以上是生活随笔為你收集整理的最全面的Nginx工作原理讲解,Nginx学习笔记——来自动力节点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三、多线程与上厕所
- 下一篇: IEC 60335-1: 2001新标准