Nginx
訂購:1. nginx 2. 清漆 3. haproxy 4. 網路伺服器?
我見過人們建議將所有這些組合在一個流程中,但它們似乎有很多重疊的功能,所以我想深入了解為什麼您可能希望在訪問實際的 Web 伺服器之前通過 3 個不同的程序。
nginx:
- ssl:是的
- 壓縮:是
- 記憶體:是
- 後端池:是
漆:
- ssl:沒有(隧道?)
- 壓縮:?
- 記憶體:是(主要功能)
- 後端池:是
代理:
- ssl:沒有(隧道)
- 壓縮:?
- 記憶體:沒有
- 後端池:是(主要功能)
將所有這些連結到您的主要 Web 伺服器之前的目的是否只是為了獲得它們的一些主要功能優勢?
讓這麼多守護程序一起做類似的事情似乎很脆弱。
您的部署和訂購偏好是什麼?為什麼?
簡單的說..
HaProxy是市場上最好的開源負載均衡器。
Varnish是市場上最好的開源靜態文件記憶體器。
Nginx是市場上最好的開源網路伺服器。
(當然這是我和許多其他人的意見)
但通常,並非所有查詢都經過整個堆棧。
一切都通過 haproxy 和 nginx/多個 nginx 的。
唯一的區別是你在靜態請求的清漆上“螺栓”。
- 任何請求都針對冗餘和吞吐量進行負載平衡(很好,這是可擴展的冗餘)
- 對靜態文件的任何請求都會首先訪問清漆記憶體(很好,很快)
- 任何動態請求都直接發送到後端(很好,沒有使用清漆)
總體而言,此模型適合可擴展且不斷增長的架構(如果您沒有多台伺服器,請移除 haproxy)
希望這會有所幫助:D
**注意:**我實際上還將介紹用於 SSL 查詢的 Pound :D
你可以有一個專門用於解密 SSL 請求的伺服器,並將標準請求傳遞給後端堆棧 :D (它使整個堆棧執行得更快更簡單)