一、 nginx是什麼?
nginx是一款輕量級的
web伺服器
/反向**伺服器及電子郵件(imap/pop3)**伺服器,並在乙個bsd-like協議下發行。
其特點是占有記憶體少,併發能力強,事實上nginx的併發能力確實在同型別的網頁伺服器中表現較好。
區分web伺服器和應用伺服器,這裡以apache web伺服器和tomcat應用伺服器為例:
apache http server 是 http 的 web 伺服器 使用者響應頁面請求,t
omcat只是乙個jsp和servet的容器,提供了環境讓應用程式在裡面執行。之所以只安裝tomcat也可以響應web應用,是因為本身整合了http服務。既然 tomcat 本身已經可以提供這樣的服務,我們為什麼還要引入 apache 或者其他的一些專門的 http伺服器呢?原因有下面幾個:
1. 提公升對靜態檔案的處理效能
2. 利用 web 伺服器來做負載均衡以及容錯
3. 無縫的公升級應用程式
這三點對乙個 web **來說是非常之重要的,我們希望我們的**不僅是速度快,而且要穩定,不能因為某個 tomcat宕機或者是公升級程式導致使用者訪問不了,而能完成這幾個功能的、最好的 http 伺服器也就只有 apache 的 http server了,它跟 tomcat 的結合是最緊密和可靠的。
二、nginx與apache對比:
(1) nginx 相對於 apache 優點:
1) 高併發響應效能非常好,官方 nginx 處理靜態檔案併發 5w/s
2) 反向**效能非常強。(可用於負載均衡)
3) 記憶體和 cpu 佔用率低。(為 apache 的 1/5-1/10)
4) 對後端服務有健康檢查功能。
5) 支援 php cgi 方式和 fastcgi 方式。
6) 配置**簡潔且容易上手。
(2)實現原理對比:ng
inx 的高併發得益於其採用了
epoll 模型
,與傳統的伺服器程式架構不同,epoll 是linux 核心 2.6 以後才出現的。
nginx 採用 epoll 模型,
非同步非阻塞
,而 apache 採用的是
select 模型。s
elect 特點:select 選擇控制代碼的時候,是遍歷所有控制代碼,也就是說控制代碼有事件響應時,select 需要遍歷所有控制代碼才能獲取到哪些控制代碼有事件通知,因此效率是非常低。
epoll 的特點:epoll 對於控制代碼事件的選擇不是遍歷的,是事件響應的,就是控制代碼上事件來就馬上選擇出來,不需要遍歷整個控制代碼鍊錶,因此效率非常高
補充:非同步和同步、阻塞和非阻塞
Nginx基礎知識
nginx nginx 是乙個高效能的http和反向 伺服器,也是乙個imap pop3 smtp伺服器。nginx是一款輕量級的web伺服器 反向 伺服器及電子郵件 imap pop3 伺服器,並在乙個bsd like 協議下發行。其特點是占有記憶體少,併發能力強,事實上nginx的併發能力確實在...
Nginx基礎知識
1.nginx簡介 nginx 發音同engine x 是一款基於非同步框架的輕量級 高效能的web伺服器 反向 伺服器 快取伺服器 電子郵件 imap pop3 伺服器 nginx作用 在專案部署時使用nginx做靜態檔案伺服器和反向 伺服器 靜態web伺服器 提供靜態頁面,擅長處理靜態檔案 反向...
nginx基礎知識小結
配置檔案講解 user nobody 開啟程序數 cpu數 worker processes 1 錯誤日誌儲存位置 error log logs error.log error log logs error.log notice error log logs error.log info 程序號儲存...