Apache-2.2

優化 apache 伺服器負載

  • March 27, 2012

我們遇到了專用伺服器負載的問題。

如果我理解正確的話,我們有 16 個 4 核 @ 2.40GHz 的處理器 cat /proc/cpuinfo 輸出。

不幸的是,我無法使用 free -m 或 vmstat。

但從頂部我得知我們有 24 GB。

並從頂部快照有關流程: 最佳

據我所知,記憶體根本沒有使用。但是cpu被大量使用。Apache 消耗了大部分 CPU。

另一個有用的資訊:

每 1.0 秒:ps u -C httpd,mysqld,php Tue Mar 27 10:48:19 2012

使用者 PID %CPU %MEM VSZ RSS TTY STAT 開始時間命令
根 7476 0.0 0.1 446808 37880 ?SN Mar06 0:43 /opt/zone/sbin/httpd -D SSL -D SLOT_ID0 -f /etc/opt/zone/apache/ssl_httpd.conf
mysql 36061 41.6 2.1 1113672 529876 ? SNl Feb20 21503:48 /opt/zone/sbin/mysqld --basedir=/opt/zone --datadir=/srvdata/mysql --user=mysql --log-error=/srvdata/mysql/dn79.err -- pid-file=/srvdata/mysql/mysqld.pid --socket=/tmp/mysql.sock --port=3306
根 37257 0.0 0.0 424056 16840 ?SN Mar22 1:03 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 52743 0.0 0.1 447100 30360 ?SN 10:40 0:00 /opt/zone/sbin/httpd -D SSL -D SLOT_ID0 -f /etc/opt/zone/apache/ssl_httpd.conf
http 52744 0.0 0.1 447100 30360 ?SN 10:40 0:00 /opt/zone/sbin/httpd -D SSL -D SLOT_ID0 -f /etc/opt/zone/apache/ssl_httpd.conf
http 52745 0.0 0.1 447100 30360 ?SN 10:40 0:00 /opt/zone/sbin/httpd -D SSL -D SLOT_ID0 -f /etc/opt/zone/apache/ssl_httpd.conf
http 52746 0.0 0.1 447100 30360 ?SN 10:40 0:00 /opt/zone/sbin/httpd -D SSL -D SLOT_ID0 -f /etc/opt/zone/apache/ssl_httpd.conf
http 52747 0.0 0.1 446956 30324 ?SN 10:40 0:00 /opt/zone/sbin/httpd -D SSL -D SLOT_ID0 -f /etc/opt/zone/apache/ssl_httpd.conf
http 52980 69.1 1.8 852468 458088 ? RN 10:41 5:02 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 53483 47.0 0.8 615088 221040 ?RN 10:43 2:05 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 53641 1.8 0.2 446580 54632 ?SN 10:45 0:03 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54384 81.2 0.9 625828 229972 ?RN 10:45 2:14 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54411 47.7 0.5 535992 142416 ?RN 10:45 1:09 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54470 41.7 0.4 512528 120012 ?RN 10:46 0:54 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54475 0.1 0.1 437016 41528 ?SN 10:46 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54486 1.5 0.2 445636 53916 ?SN 10:46 0:02 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54531 2.5 0.2 445424 53012 ?SN 10:46 0:02 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54549 0.0 0.0 424188 9188 ?SN 10:46 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54642 0.0 0.0 424188 9200 ?SN 10:47 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54651 0.0 0.0 424188 9188 ?SN 10:47 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54661 0.0 0.0 424188 9208 ?SN 10:47 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54663 6.9 0.2 449936 58560 ?SN 10:47 0:03 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54666 6.0 0.2 453356 61124 ?SN 10:47 0:02 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54667 2.8 0.1 437608 42088 ?SN 10:47 0:01 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54670 1.5 0.1 437540 42172 ?SN 10:47 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54672 2.1 0.1 439076 43648 ?SN 10:47 0:01 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54709 0.0 0.0 424188 9192 ?SN 10:47 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54711 1.0 0.1 437284 41780 ?SN 10:47 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54712 11.8 0.2 448172 54700 ?SN 10:47 0:02 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54720 0.0 0.0 424188 9192 ?SN 10:48 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54721 0.0 0.0 424188 9188 ?SN 10:48 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54747 9.1 0.2 443568 51848 ?SN 10:48 0:01 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54782 1.8 0.1 438708 37896 ?RN 10:48 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54784 0.0 0.0 424188 9180 ?SN 10:48 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54785 0.0 0.0 424188 9188 ?SN 10:48 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54789 0.0 0.0 424188 9188 ?SN 10:48 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54790 0.0 0.0 424188 9188 ?SN 10:48 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54791 0.0 0.0 424188 9188 ?SN 10:48 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0
http 54792 0.0 0.0 424056 8352 ?SN 10:48 0:00 /opt/zone/sbin/httpd -f /etc/opt/zone/apache/httpd.conf -D SLOT_ID0

Webalizer 顯示如下: Webalizer

在以下情況下可以做什麼?該應用程序是 Magento。

你在叫錯樹。似乎是 Apache 消耗了 CPU;實際上,有mod_php哪些必須為您的Magento頁面提供服務。

後者就是你的答案:Magento 確實是一頭沉重的野獸。此時不要嘗試優化 Apache,專注於您的 Magento 設置。如果您沒有成功,請不要失望。許多人在伺服器故障中嘗試過,但沒有多少人成功(據我所見)。一個沉重的軟體就是一個沉重的軟體。

除了 Janne Pikkarainens 的回答之外,我還想提出以下建議:

  • 在 magento 記憶體文件夾上使用 tmpfs
  • 確保啟用所有 magento 記憶體(html、xml 等)
  • 在 tmpfs 上儲存會話,除非您有多個後端
  • 使用 apc 作為 fast_backend(並且可以選擇 memcached 作為 slow_backend)
  • 考慮使用 varnish 記憶體部分或部分頁面。

更多關於 Varnish 和 magento 的資訊:

使用 ESI 的商業 Varnish 外掛使用 AJAX 呼叫的另一個解決方案

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