更新於 2024/06/18閱讀時間約 2 分鐘

認識NGINX

什麼是NGINX

﹝NGINX﹞是一款免費開源軟體非同步框架的Web Server,該軟體由俄羅斯程式設計師伊戈爾·賽索耶夫(Игорь Сысоев)開發並於2004年首次公開發布。2011年成立同名公司以提供支援服務。2019年3月11日,Nginx公司被F5網路公司以6.7億美元收購。
Nginx是免費的開源軟體,根據類BSD授權條款的條款釋出,並且是以其性能、穩定性、豐富的功能集、簡單的配置和低資源消耗而聞名。
很多高知名度的網站都使用 Nginx,比如:Netflix , GitHub , SoundCloud , MaxCDN 等。

NGINX主要用途:
主要應用於: a. 正向代理(Forward Proxy) b. 反向代理(Reverse Proxy) c. 負載平衡(Load Balancing) d. HTTP伺服器(HTTP Server) e. 郵件伺服器(Mail Server)

NGINX優勢:
a. 隱藏Client端或Server端真實IP。 b. 負載平衡(Load Balancing)。 c. 在處理IO高併發時,﹝NGINX﹞能保持低資源低消耗高效能。 d. 支援靜態內容,提高網頁的訪問速度。 e. 簡潔的配置模組。 f. 支持熱佈署。

NGINX劣勢:
a. ﹝NGINX﹞提升效能的代價就是降低了靈活性,動靜態模組的編譯並非都能與系統相容。 b. ﹝NGINX﹞僅能支持http、https和Email協議,因此適用範圍較小。 c. ﹝NGINX﹞對後端服務器的健康檢查,只支持通過Port來檢測,不支持通過URL來檢測,不支持Session的直接保持,但能通過ip_hash來解決。

NGINX模組:
舊版本的Nginx的模組是靜態的,添加和刪除模組都要對Nginx進行重新編譯,1.9.11以及更新的版本已經支援動態模組載入。

NGINX架構:

﹝NGINX﹞低消耗高效能的原由,正來至於它優秀的架構設計,其架構主要包括:『模組化設計』、『事件驅動架構』、『請求多階段非同步處理』、『管理程式與多工程式設計』、『記憶體池設計』,以上內容後續會慢慢進行說明。
分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.