Apache-2.2
使用 Lighttpd:apache 代理還是直接連接?
我正在通過將 lighttpd 用於靜態媒體來優化網站。我發現推薦的解決方案是使用 Apache Proxy 指向 lighttpd 伺服器。但是,這是否會佔用每個請求的 Apache 執行緒/程序?
在我的設置中,我注意到我所有的程序都用完了,即使它們沒有做任何事情,CPU 方面。Munin 表示,為了釋放 apache 程序,我配置了 lighttpd 並且所需的程序數量顯著降低。
但是,我已將其設置為直接連接到 lighty,以防止 apache 工作人員被服務靜態媒體佔用。我的問題是:當使用 Apache 代理時,每個請求是否也會消耗一個程序/工作人員?
通常,您這樣做是因為 apache 程序佔用的記憶體與在其中執行的最大腳本一樣多。因此,對於大量連接,您會不必要地佔用大量記憶體,從而限制了您可以處理的同時連接的數量。即使您要為靜態文件使用單獨的 apache 實例,您也會看到好處。
與其說是腳本阻塞程序,不如說是充分利用資源。
我不買。這種配置對於提供需要大量記憶體的 php 腳本會有一些優勢,但是經過適當調整的 Apache 可以非常有效地提供靜態文件。即使添加一個輕量級的 Web 伺服器也只會增加成本。
例外情況可能是,如果您足夠大以至於靜態文件實際上來自完全不同的機器 - 那麼代理前端委託請求是明智的。(儘管此時您可能想要使用Varnish。)