Apache-2.2

Ubuntu 執行 Apache Server (Prefork) PHP Fast-CGi 高 CPU 使用率

  • June 2, 2014

由於 CPU 使用率高,我的伺服器執行非常緩慢。我認為這一定是配置問題,但我不知道為什麼。伺服器正在執行 Plesk,我已將 PHP 配置為作為快速 CGi 應用程序執行。

伺服器規格:

Quad-Core AMD 2.2GHz
4GB RAM
Ubuntu 10.04
Apache 2.2.14
PHP 5.3.2

網站:

1 x Drupal 7
2 x WordPress 3.x

阿帕奇配置:

KeepAlive On
Timeout 30
MaxKeepAliveRequests 0
KeepAliveTimeout 2

<IfModule mpm_prefork_module>
   StartServers          4
   MinSpareServers       5
   MaxSpareServers       10
   MaxClients            20
   MaxRequestsPerChild   5000
</IfModule>

注意高CPU

我啟用了 APC,並且 Drupal 站點已打開所有記憶體,包括視圖中的記憶體。我有另一台伺服器在 CentOS 上執行超過 100 個站點,並且 cpu 使用率非常低。有什麼想法可能導致這種情況嗎?

這是一個 mod_status 輸出截圖

在此處輸入圖像描述

除了 MaxClients 被超出之外,apache error.log 中也沒有輸出。

top CPU 和記憶體線於 4 月 25 日添加 在此處輸入圖像描述

我的問題現在已經解決了,下面是我採取的步驟。

  • 使用包括 PHP 5.5 在內的最新軟體將伺服器遷移到 Ubuntu 14 LTS
  • 將 MySQL 負載拆分到自己的伺服器實例上
  • 解除安裝不需要的 Drupal 模組

**注意:**以上都沒有解決我的 CPU 問題

添加來自http://www.projecthoneypot.org/的honeypot和 BOOM,CPU 負載降低到 10% 以下。所以我的問題歸結為 HTTP 垃圾郵件以每秒超過 5 個請求(每天 400,000 個)的速度在一個包含大量 SQL 查詢的頁面上進入,但仍然存在一個問題……我的網站似乎無法很好地擴展,我猜這是不是正如 Janne 建議的那樣,我必須盡可能地優化/記憶體合法流量。

感謝大家的建議。

再多的 Apache 或 PHP 調整都不會幫助您,是時候看看是什麼讓 Drupal 或 Wordpress 如此緩慢了。我猜您在其中一個或兩個中都有一些自定義模組,並且一些自定義模組正在拖累性能。嘗試一一禁用自定義模組,看看是否有幫助。還可以在您的數據庫中啟用日誌記錄並發現緩慢和/或過多的查詢。

對於 Drupal,Boost可以是一個出色的性能提升。使用 WordPress,W3TC往往會提供很多幫助。

引用自:https://serverfault.com/questions/590556