在生產中實際遇到的狀況,系統高負載後的狀況緩存
top 併發
[root@xxx ~]$ top top - 13:49:47 up 400 days, 29 min, 1 user, load average: 0.02, 0.02, 0.00 Tasks: 155 total, 1 running, 153 sleeping, 0 stopped, 1 zombie Cpu(s): 0.1%us, 0.3%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 8174464k total, 8112196k used, 62268k free, 160656k buffers Swap: 6094840k total, 3379004k used, 2715836k free, 126196k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 15 0 10368 500 472 S 0.0 0.0 0:32.00 init 2 root RT -5 0 0 0 S 0.0 0.0 0:03.35 migration/0 3 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0 4 root RT -5 0 0 0 S 0.0 0.0 0:14.44 migration/1
第一行:時間爲:13:49:47; 已經運行了up 400 days 29 min; 當前在線用戶:1個; 平均負載:0.02, 0.02, 0.00 表示最近1分鐘,5分鐘,15分鐘的系統平均負載.命令行
第二行:進程總數:xx正在運行進程數:xx睡眠進程數:xx中止的進程數:xx殭屍進程數:xxcode
第三行:用戶空間佔用CPU百分比: xx% 內核空間佔用CPU百分比:xx% 用戶進程空間內改變過優先級的進程佔用CPU百分比:0.0% 空閒CPU百分比:0.0 等待輸入輸出的CPU時間百分比:0.0 CPU服務軟中斷所耗費的時間總額:0.0% Steal Time:0.0%進程
PID | 進程ID |
USER | 進程全部者 |
PR | 優先級 |
NI | nice值,負值表示高優先級,正值表示低優先級 |
VIRT | 進程使用的虛擬內存總量 |
RES | 進程使用的、未被換出的物理內存大小 |
SHR | 共享內存大小 |
S | 進程狀態 |
%CPU | 上次更新到如今的CPU時間佔用百分比 |
%MEM | 進程使用的物理內存百分比 |
TIME+ | 進程使用CPU總時間 |
COMMAND | 命令名、命令行 |
第四行: 物理內存總量:xxxx 使用的物理內存總量:xxx 空閒內存總量:xxx 用做內核緩存的內存量:xx內存
第五行: 交換區總量:xxx 使用的交換區總量:xx 空閒交換區總量:xx 緩衝的交換區總量:xxit
第六行: 進程ID、進程全部者、優先級、nice值,負值表示高優先級,正值表示低優先級、進程使用的虛擬內存總量、進程使用的、未被換出的物理內存大小、共享內存大小、進程狀態、上次更新到如今的CPU時間佔用百分比、進程使用的物理內存百分比、進程使用CPU總時間、命令名、命令行io
PID | 進程ID |
USER | 進程全部者 |
PR | 優先級 |
NI | nice值,負值表示高優先級,正值表示低優先級 |
VIRT | 進程使用的虛擬內存總量 |
RES | 進程使用的、未被換出的物理內存大小 |
SHR | 共享內存大小 |
S | 進程狀態 |
%CPU | 上次更新到如今的CPU時間佔用百分比 |
%MEM | 進程使用的物理內存百分比 |
TIME+ | 進程使用CPU總時間 |
COMMAND | 命令名、命令行 |
cat /proc/meminfotable
[root@xxxx ~]$ cat /proc/meminfo MemTotal: 8174464 kB MemFree: 59956 kB Buffers: 160728 kB Cached: 126548 kB SwapCached: 1553744 kB Active: 5046584 kB Inactive: 2939072 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 8174464 kB
MemTotal,系統從加電開始到引導完成,firmware/BIOS要保留一些內存,kernel自己要佔用一些內存,最後剩下可支配的內存就是MemTotalsed
MemFree,表示系統還沒有使用的內存
cached,緩存,是普通文件數據所佔用的緩存頁。「Cached」 表示除去 「buffers」 和 「swap cache」 以外,剩下的也就是普通文件的緩存頁的數量
buffer, buffers」 表示塊設備(block device)所佔用的緩存頁,包括:直接讀寫塊設備、以及文件系統元數據
free -m
[root@xxx ~]$ free -m total used free shared buffers cached Mem: 7982 7924 58 0 156 123 -/+ buffers/cache: 7644 338 Swap: 5951 3299 2652
Mem:表示物理內存統計
total 內存總數 xx
used 已使用的內存 xx
free 空閒的內存數 xx
shared 當前已經廢棄不用,老是xx
buffers Buffer 緩存內存數: xx
cached Page 緩存內存數:xx
(存在關係: total = used + free )
-/+ buffers/cached:表示物理內存的緩存統計
(-buffers/cache) used內存數:xx (指的第一部分Mem行中的used - buffers - cached)
(+buffers/cache) free內存數: xx (指的第一部分Mem行中的free + buffers + cached)
-buffers/cache反映的是被程序實實在在吃掉的內存;
+buffers/cache反映的是能夠挪用的內存總數;
Swap:表示硬盤上交換分區的使用狀況
重啓服務後
shutdown -r now --當即重啓 shutdown -r +30 'The System Will Reboot in 30 Mins' --30分鐘後重啓並併發送通知給其它在線用戶 shutdown -h now --當即關機 shutdown -h +10 --10分鐘後自動關機 reboot 當即重啓,效果等同於shutdown -r now
[root@xxx ~]$ top top - 14:20:48 up 4 min, 1 user, load average: 0.03, 0.10, 0.05 Tasks: 145 total, 1 running, 144 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.1%sy, 0.0%ni, 99.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 8174464k total, 514704k used, 7659760k free, 30116k buffers Swap: 6094840k total, 0k used, 6094840k free, 312892k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 15 0 10368 684 572 S 0.0 0.0 0:00.64 init 2 root RT -5 0 0 0 S 0.0 0.0 0:00.00 migration/0 3 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0 4 root RT -5 0 0 0 S 0.0 0.0 0:00.00 migration/1
cat /proc/meminfo
[root@xxxx ~]$ cat /proc/meminfo MemTotal: 8174464 kB MemFree: 6415948 kB Buffers: 36816 kB Cached: 737460 kB SwapCached: 0 kB Active: 1007600 kB Inactive: 662992 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 8174464 kB LowFree: 6415948 kB SwapTotal: 6094840 kB SwapFree: 6094840 kB
free -m
[root@xxxx ~]$ free -m total used free shared buffers cached Mem: 7982 502 7480 0 29 305 -/+ buffers/cache: 167 7815 Swap: 5951 0 5951