無論是 Nginx 或 Apache 都是 Web 伺服器應用,通俗點說我們的網站都是需要 Web 伺服器應用程式來展現給客戶的,而伺服器是供 Web 伺服器應用正常穩定的運作的基礎。
所以說選擇好 Web 伺服器應用程式是會影響到網站效能表現的,甚至會影響到使用者的瀏覽體驗。而目前比較主流的 Web 伺服器應用程式也就是 Nginx 和 Apache 了,今天就要跟大家闡述為什麼我一直都推薦大家使用 Nginx 而不是 Apache? (推薦學習:nginx教學)
有關Nginx 和Apache 的介紹我就不做贅述了,大家自行百度、谷歌一下就可以了解了,廢話不多說了,直奔主題:
1、作為Web 伺服器:比起Apache,Nginx 使用更少的資源,支援更多的並發連接,體現更高的效率,這一點使Nginx 尤其受到虛擬主機提供者的歡迎。
在高連線並發的情況下,Nginx 是 Apache 伺服器不錯的替代品;Nginx 在美國是做虛擬主機生意的老闆們經常選擇的軟體平台之一。能夠支援高達 50000 個並發連接數的回應,感謝 Nginx 為我們選擇了 epoll and kqueue 作為開發模型。
Nginx 作為負載平衡伺服器:Nginx 既可以在內部直接支援 Rails 和 PHP 程式對外進行服務,也可以支援作為 HTTP 代理伺服器對外進行服務。 Nginx 採用 C 來寫,不論是系統資源開銷或 CPU 使用效率都比 Perlbal 好很多。
2、Nginx 設定簡潔,Apache 複雜,Nginx 啟動特別容易,並且幾乎可以做到 7*24 不間斷運行,即使運行數月也不需要重新啟動。
你還能夠在不間斷服務的情況下進行軟體版本的升級。 Nginx 靜態處理效能比 Apache 高 3 倍以上,Apache 對 PHP 支援比較簡單,Nginx 需要配合其他後端來使用,Apache 的元件比 Nginx 多。
3、最核心的差異在於 Apache 是同步多進程模型,一個連線對應一個進程;Nginx 是異步的,多個連接(萬層)可以對應一個進程。
4、Nginx 的優點是處理靜態請求,cpu 記憶體使用率低,Apache 適合處理動態請求,所以現在一般前端用 Nginx 作為反向代理抗住壓力,Apache 作為後端處理動態請求。
以上是nginx和apache哪個好的詳細內容。更多資訊請關注PHP中文網其他相關文章!