Memory-Usage

高負荷從何而來?

  • April 3, 2014

昨晚我收到了很多來自 DirectAdmin 的消息:你係統上的平均負載是 46.86,或者類似的數字。它帶有一個“頂級”列印輸出,但我從該列印輸出中只能看出 CPU 有 99.7% 處於空閒狀態,並且使用的記憶體似乎很高。但是看了一點我明白這是正常的,只要Swap記憶體低(2G的80M低對嗎?)就沒有問題。

所以我的問題是:高負載從何而來?我應該擔心和/或採取任何行動嗎?

這是在具有 512MB RAM 和 1 個核心的 CentOS VPS 上。它目前僅託管 2 個流量非常低的網站。

從今天早上(半天后)開始的免費命令:

free
            total       used       free     shared    buffers     cached
Mem:        503396     444488      58908          0      53688     165556
-/+ buffers/cache:     225244     278152
Swap:      2097144      81840    2015304

來自 directAdmin 的第一條消息,包括頂部列印輸出:

This is an automated message notifying you that the 5 minute load average on your system is 46.86.
This has exceeded the 10 threshold.

One Minute      - 51.18
Five Minutes    - 46.86
Fifteen Minutes - 30.63

top - 00:16:43 up 92 days, 12:58,  1 user,  load average: 51.18, 46.86, 30.63
Tasks: 196 total,   3 running, 193 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.1%us,  0.1%sy,  0.0%ni, 99.7%id,  0.2%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    503396k total,   458164k used,    45232k free,    36656k buffers
Swap:  2097144k total,    82432k used,  2014712k free,   141668k cached

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
12008 root      20   0 15068 1156  760 R  2.2  0.2   0:00.04 /usr/bin/top -c -b -n 1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
12012 root      20   0 15068 1144  760 R  2.2  0.2   0:00.03 /usr/bin/top -c -b -n 1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
12014 root      20   0 15076 1252  844 R  2.2  0.2   0:00.03 /usr/bin/top -c -b -n 1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
11828 diradmin  20   0 53952 2644 2060 S  1.1  0.5   0:00.08     /usr/local/directadmin/dataskq                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
11881 diradmin  20   0 53952 2644 2060 S  1.1  0.5   0:00.04     /usr/local/directadmin/dataskq                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
  1 root      20   0 19244 1136  916 S  0.0  0.2   0:00.91 /sbin/init                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
  2 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [kthreadd]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
  3 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 [migration/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
  4 root      20   0     0    0    0 S  0.0  0.0   0:00.58 [ksoftirqd/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
  5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 [watchdog/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
  6 root      20   0     0    0    0 S  0.0  0.0   0:01.91 [events/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
  7 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [cpuset]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           
  8 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [khelper]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
  9 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [netns]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
 10 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [async/mgr]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
 11 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [pm]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
 12 root      20   0     0    0    0 S  0.0  0.0   0:00.01 [sync_supers]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
 13 root      20   0     0    0    0 S  0.0  0.0   0:00.01 [bdi-default]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
 14 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [kintegrityd/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
 15 root      20   0     0    0    0 S  0.0  0.0   0:01.03 [kblockd/0]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
 16 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [kacpid]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           
 17 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [kacpi_notify]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
 18 root      20   0     0    0    0 S  0.0  0.0   0:00.00 [kacpi_hotplug] 

CPU 使用率不是對系統負載的唯一貢獻,另一個是不間斷睡眠 (‘D’) 中的程序。嘗試類似的事情ps -axu |grep D(這可能會產生誤報,因為字母 D 可能出現在其他地方,而不僅僅是在 STAT 列中)。如果有任何“D”程序累積,這至少應該給你一個提示。通常,它們正在等待一些沒有立即響應的資源(例如磁碟上的文件)。有時,這些程序可能會掛起很長時間(例如在等待伺服器無法訪問的 NFS 掛載時)。

**編輯:**您也可以嘗試類似ps axu | grep -E " D[<NLsl+]* "的方法來避免ps -axu |grep D.

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