輕量級 HTTPS 反向代理
我有類似這個成員的需求:單個公共 IP,多個 HTTPS 後端,證書應該留在後端伺服器上。文章列表的答案 NGINX、haproxy 和 sniproxy 也是可能的解決方案。
我的公共 IP 位於資源非常緊張的 Debian 伺服器上(1 個 vCPU,512MB RAM),所以這是個問題。列出的哪些解決方案需要最少的資源?或者還有其他選擇嗎?蒂亞!
@ anx說“測試它”(儘管如此),所以我做到了。
好吧,不是真的,因為我沒有時間。由於我懷疑不同的解決方案可能相差幾個數量級,因此我省去了以下痛苦:實際配置事物並設置另一個系統來執行負載測試。特別是因為我的反向代理的規格暗示後端伺服器的容量不高。
相反,我安裝了軟體包(只是
apt install <App>
)並做了free -m && service <APP> start && free -m && service <APP> stop && free -m
. 在步驟之間等待幾秒鐘。我還使用了 Debian 11,在撰寫本文時,它仍然是測試分支。非常簡陋,我知道,但這符合我的目的。這是結果,格式為:Application (Disk space used, Additional packages installed by apt, memory used)
sniproxy (298 kB, 2, 1-2 MB)
apache2 (8,634 kB, 6, 3-4 MB)
nginx (20,500 kB, 20, 4-6 MB)
haproxy (4,315 kB, 1, 34-35 MB)
我已經包含了 apache,因為我假設它也包含類似的功能,即使連結的文章中沒有提到它。請注意,這在科學上並不可靠,因為我剛剛使用
free
過並且作業系統的記憶體使用當然會促成這些變化。因此,在 UNIX 傳統中,使用一種工具,它只完成一項工作(希望它做得很好)。因此,如果您只需要一個支持 SNI 的輕量級第 4 層代理,請使用
sniproxy
. 連結的文章還提到,它很容易配置。