nginx優(yōu)點?
1、可以高并發(fā)連接
官方測試Nginx能夠支撐5萬并發(fā)連接,實際生產(chǎn)環(huán)境中可以支撐2~4萬并發(fā)連接數(shù)。
原因,主要是Nginx使用了最新的epoll(Linux2.6內(nèi)核)和kqueue(freeBSD)網(wǎng)路I/O模型,而Apache使用的是傳統(tǒng)的Select模型,其比較穩(wěn)定的Prefork模式為多進程模式,需要經(jīng)常派生子進程,所以消耗的CPU等服務(wù)器資源,要比Nginx高很多。
2、內(nèi)存消耗少
Nginx+PHP(FastCGI)服務(wù)器,在3萬并發(fā)連接下,開啟10個Nginx進程消耗150MB內(nèi)存,15MB*10=150MB,開啟的64個PHP-CGI進程消耗1280內(nèi)存,20MB*64=1280MB,加上系統(tǒng)自身消耗的內(nèi)存,總共消耗不到2GB的內(nèi)存。
如果服務(wù)器的內(nèi)存比較小,完全可以只開啟25個PHP-CGI進程,這樣PHP-CGI消耗的總內(nèi)存數(shù)才500MB。
3、成本低廉
購買F5BIG-IP、NetScaler等硬件負載均衡交換機,需要十多萬到幾十萬人民幣,而Nginx為開源軟件,采用的是2-clause BSD-like協(xié)議,可以免費試用,并且可用于商業(yè)用途。
BSD開源協(xié)議是一個給使用者很大自由的協(xié)議,協(xié)議指出可以自由使用、修改源代碼、也可以將修改后的代碼作為開源或?qū)S密浖侔l(fā)布。
4、配置文件非常簡單
網(wǎng)絡(luò)和程序一樣通俗易懂,即使,非專用系統(tǒng)管理員也能看懂。
5、支持Rewrite重寫
能夠根據(jù)域名、URL的不同,將http請求分到不同的后端服務(wù)器群組。
6、內(nèi)置的健康檢查功能
如果NginxProxy后端的某臺Web服務(wù)器宕機了,不會影響前端的訪問。
7、節(jié)省帶寬
支持GZIP壓縮,可以添加瀏覽器本地緩存的Header頭。
8、穩(wěn)定性高
用于反向代理,宕機的概率微乎其微。
9、支持熱部署
Nginx支持熱部署,它的自動特別容易,并且,幾乎可以7天*24小時不間斷的運行,即使,運行數(shù)個月也不需要重新啟動,還能夠在不間斷服務(wù)的情況下,對軟件版本進行升級。