Nginx 其實就是一款輕量級的 Web 伺服器、反向代理伺服器,由於它的記憶體占用少,啟動極快,高併發能力強,在互聯網項目中廣泛應用。 那麼你可能會問了:“不是說 Nginx 嗎?怎麼又扯出來一個 Web 伺服器呢?啥是伺服器?”。彆著急,在學習 Nginx 之前你還真得知道什麼是伺服器這個概念,下 ...
Nginx 其實就是一款輕量級的 Web 伺服器、反向代理伺服器,由於它的記憶體占用少,啟動極快,高併發能力強,在互聯網項目中廣泛應用。
那麼你可能會問了:“不是說 Nginx 嗎?怎麼又扯出來一個 Web 伺服器呢?啥是伺服器?”。彆著急,在學習 Nginx 之前你還真得知道什麼是伺服器這個概念,下麵我們先來看下到底啥是伺服器。
啥是伺服器
WEB伺服器
我們上面嘮叨了一下什麼是伺服器。下麵我們說一下啥是 Web 伺服器,在上面我們也說了 Nginx 其實就是一個 輕量級的 Web 伺服器,那麼什麼是 Web 伺服器呢?我們平時可以打開瀏覽器訪問微博的網站,獲取各種娛樂圈各種勁爆消息。這個看似簡單的行為,背後有隱藏了那些細節呢?
哈哈,當然了,一個成熟的 Web
伺服器肯定還有其他各種各樣的功能,但是原理都是一樣。所以,一定要淡定,學會 Web
伺服器並沒有想象中的那麼困難。
WEB伺服器的分類
其實,現在的市面上面有很多類似於 Nginx 的 Web 伺服器,如下圖:
幾款伺服器比較
從這兩張圖中可以看到,Nginx 開發者數量已經明顯的超過了其他 Web Server
開發者數量,獨占鰲頭。在 Web Server
市場使用率中,Nginx 的占有率一直在穩步的上升,超過了 IIS,與 Apache 的差距越來越小。所以,使用和學習 Nginx 已經成為每一個後端工程師必備的技能了。好了,鋪墊了這麼多,下麵我們正式來看下 Nginx 倒底是個什麼東西。
Nginx簡介
Nginx
是由戰鬥民族的一位名叫 Igor Sysoev
的程式猿開發的,開源、高性能的 HTTP
伺服器和反向代理伺服器,也可以作為一個 IMAP/POP3
代理伺服器。也就是說,Nginx
不僅可以托管網站,進行HTTP
服務處理,還可以作為反向代理伺服器。Nginx 出現的初衷是為瞭解決著名的 C10K
問題而出現的。和傳統的 Web Server
不一樣,Nginx
使用了非同步事件處理機制架構。這種架構可以輕鬆高效地處理大量的請求,並且非常的節省記憶體。高性能是Nginx
最大的優點。
啥?不知道什麼是C10K
問題,我嚴重懷疑你是從外星球來的,來,看這裡。不知道什麼是非同步事件
處理機制?沒關係,我會在後面的小節中分析的,包學會。
為什麼選擇Nginx
如果沒有親身體驗過這種痛苦,你是無法理解的這是多麼痛的領悟。
Nginx能幹啥
百度網盤面試題資源分享鏈接:https://pan.baidu.com/s/1XDWqO3iUK2ZC1Uo1PBwFfg
提取碼:urtq
整理了一些資料,包括但不限於:分散式架構、高可擴展、高性能、高併發、伺服器性能調優、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、Mysql優化、shell腳本、Docker、微服務、Nginx等多個知識點高級進階乾貨獲取點擊鏈接加入群聊【swoole學習2群】: