每天一命令(16)top - display Linux tasks

top - display Linux tasks

man top 查看命令文檔

1、統計信息區
第一行:隊列信息,同uptime命令的執行結果
19:53:24 當前系統日期
up 15:54 系統運行時間,格式爲時:分
5 users 登陸過系統的用戶數量
load average: 0.00, 0.00, 0.00 系統負載,即任務隊列的平均長度。 三個數值分別爲 1分鐘、5分鐘、15分鐘前到現在的平均值

2、第二、三行爲進程和CPU的信息
Tasks: 91 total 進程總數
2 running 正在運行的進程數
89 sleeping 休眠的進程數
0 stopped 停止的進程數
0 zombie 殭屍進程數
Cpu(s) 0.0%us 用戶空間佔用CPU百分比
0.4%sy 內核空間佔用CPU百分比
0.0%ni 用戶進程空間內改變過優先級的進程佔用CPU百分比
99.3%id 空閒CPU百分比
0.0%wa 等待輸入輸出的CPU時間百分比
0.0%hi - 硬中斷佔用CPU的百分比
0.4%si - 軟中斷佔用CPU的百分比
0.0%st - 是當hypervisor服務器另一個虛擬處理器的時候,虛擬CPU等待實際CPU的時間的百分比。當st值比較高的話,你需要向主機供應商申請擴容虛擬機。服務器上的另一個虛擬機可能擁有更大更多的CPU時間片,你可能需要申請升級以與之競爭。另外高steal值可能意味着主機供應商在服務器上過量地出售虛擬機。如果升級了虛擬機,steal值還不降的話,你應該尋找另一家服務供應商。

3,內存狀態
Mem: 498168k total(內存總量), 275796k used(已使用內存量), 222372k free(空閒內存量), 75464k buffers(緩存的內存量)
4,swap交換分區信息
Swap: 524284k total(交換區總量), 0k used(使用的交換區總量), 524284k free(剩餘交換區總量), 57964k cached( 緩衝的交換區總量)
5、各進程(任務)的狀態監控
PID — 進程id
USER — 進程所有者
PR — 進程優先級
NI — nice值。負值表示高優先級,正值表示低優先級
VIRT — 進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES
RES — 進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA
SHR — 共享內存大小,單位kb
S — 進程狀態。D=不可中斷的睡眠狀態 R=運行 S=睡眠 T=跟蹤/停止 Z=殭屍進程
%CPU — 上次更新到現在的CPU時間佔用百分比
%MEM — 進程使用的物理內存百分比
TIME+ — 進程使用的CPU時間總計,單位1/100秒
COMMAND — 進程名稱(命令名/命令行)

root@nginx02  ~
# top
top - 19:53:24 up 15:54,  5 users,  load average: 0.00, 0.00, 0.00
Tasks:  91 total,   2 running,  89 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.4%sy,  0.0%ni, 99.3%id,  0.0%wa,  0.0%hi,  0.4%si,  0.0%st
Mem:    498168k total,   275796k used,   222372k free,    75464k buffers
Swap:   524284k total,        0k used,   524284k free,    57964k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                         
    7 root      20   0     0    0    0 R  1.3  0.0   1:52.67 events/0                                                                         
  768 root      20   0     0    0    0 S  0.3  0.0   0:06.73 vmmemctl                                                                         
    1 root      20   0 19364 1540 1228 S  0.0  0.3   0:04.76 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.78 ksoftirqd/0                                                                      
    5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 stopper/0                                                                        
    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.60 watchdog/0                                                                       
    8 root      20   0     0    0    0 S  0.0  0.0   0:00.00 events/0                                                                         
    9 root      20   0     0    0    0 S  0.0  0.0   0:00.00 events_long/0                                                                    
   10 root      20   0     0    0    0 S  0.0  0.0   0:00.00 events_power_ef                                                                  
   11 root      20   0     0    0    0 S  0.0  0.0   0:00.00 cgroup                                                                           
   12 root      20   0     0    0    0 S  0.0  0.0   0:00.00 khelper                                                                          
   13 root      20   0     0    0    0 S  0.0  0.0   0:00.00 netns                                                                            
   14 root      20   0     0    0    0 S  0.0  0.0   0:00.00 async/mgr                                                                        
   15 root      20   0     0    0    0 S  0.0  0.0   0:00.00 pm                                                                               
   16 root      20   0     0    0    0 S  0.0  0.0   0:00.95 sync_supers                                                                      
   17 root      20   0     0    0    0 S  0.0  0.0   0:01.01 bdi-default                                                                      
   18 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kintegrityd/0                                                                    
   19 root      20   0     0    0    0 S  0.0  0.0   0:01.06 kblockd/0                                                                        
   20 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kacpid                                                                           
   21 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kacpi_notify                                                                     
   22 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kacpi_hotplug                                                                    
   23 root      20   0     0    0    0 S  0.0  0.0   0:00.00 ata_aux 

多U多核CPU監控
在top基本視圖中,按鍵盤數字“1”,可監控每個邏輯CPU的狀況:
Cpu0 如果有多個就按照這個排序

top - 20:28:58 up 16:29,  4 users,  load average: 0.00, 0.00, 0.00
Tasks:  88 total,   1 running,  87 sleeping,   0 stopped,   0 zombie
Cpu0  :  0.0%us,  0.3%sy,  0.0%ni, 99.3%id,  0.0%wa,  0.0%hi,  0.3%si,  0.0%st
Mem:    498168k total,   273352k used,   224816k free,    75464k buffers
Swap:   524284k total,        0k used,   524284k free,    57972k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                         
    7 root      20   0     0    0    0 S  0.3  0.0   2:05.03 events/0                                                                         
    1 root      20   0 19364 1540 1228 S  0.0  0.3   0:04.80 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.84 ksoftirqd/0                                                                      
    5 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 stopper/0                                                                        
    6 root      RT   0     0    0    0 S  0.0  0.0   0:00.62 watchdog/0                                                                       
    8 root      20   0     0    0    0 S  0.0  0.0   0:00.00 events/0                                                                         
    9 root      20   0     0    0    0 S  0.0  0.0   0:00.00 events_long/0                                                                    
   10 root      20   0     0    0    0 S  0.0  0.0   0:00.00 events_power_ef                                                                  
   11 root      20   0     0    0    0 S  0.0  0.0   0:00.00 cgroup                                                                           
   12 root      20   0     0    0    0 S  0.0  0.0   0:00.00 khelper                                                                          
   13 root      20   0     0    0    0 S  0.0  0.0   0:00.00 netns                                                                            
   14 root      20   0     0    0    0 S  0.0  0.0   0:00.00 async/mgr                                                                        
   15 root      20   0     0    0    0 S  0.0  0.0   0:00.00 pm                                                                               
   16 root      20   0     0    0    0 S  0.0  0.0   0:01.02 sync_supers                                                                      
   17 root      20   0     0    0    0 S  0.0  0.0   0:01.04 bdi-default                                                                      
   18 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kintegrityd/0                                                                    
   19 root      20   0     0    0    0 S  0.0  0.0   0:01.12 kblockd/0                                                                        
   20 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kacpid                                                                           
   21 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kacpi_notify                                                                     
   22 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kacpi_hotplug                                                                    
   23 root      20   0     0    0    0 S  0.0  0.0   0:00.00 ata_aux                                                                          
   24 root      20   0     0    0    0 S  0.0  0.0   0:00.02 ata_sff/0   

敲擊鍵盤“b”(打開/關閉加亮效果)
這裏寫圖片描述

按f鍵查看顯示字段

有””並且標註爲大寫字母的字段是可顯示的,沒有””並且是小寫字母的字段是不顯示的。如果要在基本視圖中顯示“CODE”和“DATA”兩個字段,可以通過敲擊“r”和“s”鍵:

這裏寫圖片描述

監控java線程數:
ps -elf | grep java | wc -l

監控網絡客戶連接數:
netstat -n | grep tcp | grep 偵聽端口 | wc -l

在Linux系統“一切都是文件”的思想貫徹指導下,所有進程的運行狀態都可以用文件來獲取。系統根目錄/proc中,每一個數字子目錄的名字都是運行中的進程的PID,進入任一個進程目錄,可通過其中文件或目錄來觀察進程的各項運行指標,例如task目錄就是用來描述進程中線程的,因此也可以通過下面的方法獲取某進程中運行中的線程數量(PID指的是進程ID):

ls /proc/PID/task | wc -l

在linux中還有一個命令pmap,來輸出進程內存的狀況,可以用來分析線程堆棧:

pmap PID
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章