在深入了解調整 Apache 的細節之前,我們需要了解當 VPS 或專用服務器由於未優化配置而無響應時會發生什麼。
過度優化的服務器被配置為允許比服務器硬件可以管理的更多並發請求 (ServerLimit)。以這種方式配置的服務器有一個臨界點,一旦達到,服務器就會陷入永久交換場景。這意味著內核無法從系統交換文件中快速讀取和寫入數據。
交換文件讀/寫訪問比標準內存空間慢得多。交換文件延遲可能會導致服務器瓶頸,因為內核試圖以比物理速度更快的速度讀取和寫入數據。這就是通常所說的顛簸。如果沒有立即註意到,碰撞可能會導致系統失控並崩潰。
運行 Junk Clean 時間過長會快速模擬數十年的讀/寫活動,並對硬盤驅動器本身造成物理損壞。 在優化 Apache 時,一定要注意不要創建一個顛簸的場景。為此,我們根據幾個因素計算服務器的抖動點。
飛行前檢查
本文涵蓋了所有基於 Apache 的服務器,包括但不限於傳統的專用服務器和運行各種 Linux 發行版的託管雲服務器。包括 Apache 存儲以下 Liquid Web 系統類型的配置的主要位置:
估計的顛簸點
使用一個簡單的公式來計算服務器的估計抖動點或 ServerLimit。

- 收益/現金:內核用於緩衝區和高速緩存的總內存。
- 預訂的:為未保留的 Apache 進程保留的內存量。
- 可用: buff/cache 和保留內存的區別。
- 平均阿帕奇:在高峰時間運行的所有 Apache 子節點的平均值。
注意:Slashpoint/ServerLimit 計算應在高峰運行時間執行,並定期重新評估以獲得最佳性能。
斜線點值與 Apache 服務器可以運行的子節點數相同。這適用於線程或非線程子級。當內存中運行的子節點數量達到計算的斜線點時,服務器開始崩潰。以下示例顯示了一個標準 Liquid Web 完全託管的 cPanel 服務器,以演示如何收集計算系統估計抖動點所需的詳細信息。
緩衝/高速緩存
在現代 Linux 系統上,您可以使用緩衝區/緩存 /proc/內存信息 創建一個添加了緩衝區、緩存和板統計信息的文件。您可以使用 free 命令快速檢索此信息,如下例所示。
free
輸出:

不要被標有“可用”的列所迷惑。可重新分配的內存,僅查看 buff/cache 列 (708436)。
保留內存
保留內存是 Apache 為其他服務保留的一部分內存。 Apache 最大競爭對手之外的其他內存包括 MySQL、Tomcat、Memcache、Varnish 和 Nginx。要確定有效的保留內存,您應該檢查這些服務配置。這些配置超出了本文的範圍。然而,MySQL 是 Apache 最常用的服務。 在線工具 MySQL 分析和配置幫助與本文分開。
注意:為服務器上運行的其他服務節省 25% 的總緩衝區/高速緩存內存。例子:
- 標準的 cPanel 服務器運行多個服務,Apache 和 MySQL。具有這些服務的服務器運行較重,應為非 Apache 服務保留 25%。
- 純 Apache Mass Load Balancing 配置中的 Web 節點不需要為其他服務保留額外的內存。
平均 Apache 內存
檢查平均大小 在 Apache 中,使用 ps 命令列出所有正在運行的 httpd 進程的 RSS(駐留集大小)相對容易。注意:某些發行版使用“apache”而不是“httpd”作為進程名稱。
在這個例子中,短 奇怪的 該腳本打印平均值而不是列出維度。
ps o rss= -C httpd|awk '{n+=$1}END{print n/NR}'
輸出:
22200.6
這個例子可以很容易地手動平均,但更大的服務器需要更多的計算。
ps o rss -C httpd
輸出:
RSS
5092
27940
28196
27572
計算凹凸點
將可用內存除以收集後的平均值。 Apache,四捨五入到最接近的整數。空閒內存是緩衝區/高速緩存減去保留內存。計算過程以表格形式總結如下。

以下是對各種內存配置的一些保守估計。這些估計可用作初始配置,但應在高峰時段進行額外的性能評估以調整服務器指令。

結論是
確定您的最佳位置 Apache 可以幫助您避免服務器停機、銷售損失和客戶流失。調整可用資源是保持服務以最佳速度運行的重要部分。
我們經驗豐富的技術人員和系統管理員將指導您如何利用這些技術!
通過我們的票務系統 [email protected]電話 (800-580-4986) 或 在線聊天 或者任何你喜歡的方式。
我們努力工作,因為我們以成為 Hosting™ 最樂於助人的人而自豪。