指南
1.top
- 查看机器整体的负载情况,主要包含CPU、内存使用率,进程负载情况,交换区使用
- 使用好习惯:top命令执行之后,再按一下数字键1,显示所有CPU的详细情况
示例:
top - 09:44:56 up 16 days, 21:23, 1 user, load average: 9.59, 4.75, 1.92
Tasks: 145 total, 2 running, 143 sleeping, 0 stopped, 0 zombie
Cpu(s): 99.8%us, 0.1%sy, 0.0%ni, 0.2%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 4147888k total, 2493092k used, 1654796k free, 158188k buffers
Swap: 5144568k total, 56k used, 5144512k free, 2013180k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4871 root 20 0 988780 152828 12632 S 12.0 0.5 10435:58 consul
4156 root 20 0 7034592 953148 12384 S 7.0 2.9 2146:50 java
19083 root 20 0 6958356 904376 12484 S 6.6 2.7 589:30.91 java
27818 root 20 0 6953012 993160 12468 S 6.6 3.0 1120:31 java
396 root 20 0 6935492 904640 12564 S 6.3 2.7 451:50.11 java
30140 root 20 0 6862880 871176 16384 S 6.3 2.6 44:23.11 java
27980 root 20 0 6705824 1.1g 8340 S 3.7 3.4 3690:07 java
省略其他。。。
按数字键1之后:8核CPU会显示详细信息
%Cpu0 : 3.7 us, 2.3 sy, 0.0 ni, 93.6 id, 0.0 wa, 0.0 hi, 0.3 si, 0.0 st
%Cpu1 : 4.0 us, 2.0 sy, 0.0 ni, 94.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu2 : 4.7 us, 1.7 sy, 0.0 ni, 93.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu3 : 4.0 us, 2.7 sy, 0.0 ni, 93.0 id, 0.3 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu4 : 4.3 us, 2.7 sy, 0.0 ni, 93.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu5 : 3.7 us, 2.0 sy, 0.0 ni, 94.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu6 : 5.0 us, 2.7 sy, 0.0 ni, 92.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu7 : 4.0 us, 2.7 sy, 0.0 ni, 93.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
解释:
第一行:任务队列信息,同 uptime 命令的执行结果
- top - 09:44:56[当前系统时间],
- 16 days[系统已经运行了16天],
- 1 user[个用户当前登录],
- load average: 9.59, 4.75, 1.92[系统负载,即任务队列的平均长度,三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值]
第二行:Tasks — 任务(进程)信息
- Tasks: 145 total[总进程数],
- 2 running[正在运行的进程数],
- 143 sleeping[睡眠的进程数],
- 0 stopped[停止的进程数],
- 0 zombie[冻结进程数],
第三行:cpu状态信息
- Cpu(s): 99.8%us[用户空间占用CPU百分比],
- 0.1%sy[内核空间占用CPU百分比],
- 0.0%ni[用户进程空间内改变过优先级的进程占用CPU百分比],
- 0.2%id[空闲CPU百分比],
- 0.0%wa[等待输入输出的CPU时间百分比],
- 0.0%hi[硬中断(Hardware IRQ)占用CPU的百分比],
- 0.0%st[软中断(Software Interrupts)占用CPU的百分比],
第四行:内存状态信息
- Mem: 4147888k total[物理内存总量],
- 2493092k used[使用的物理内存总量],
- 1654796k free[空闲内存总量],
- 158188k buffers[用作内核缓存的内存量]
第五行:swap交换分区信息
- Swap: 5144568k total[交换区总量],
- 56k used[使用的交换区总量],
- 5144512k free[空闲交换区总量],
- 2013180k cached[缓冲的交换区总量],
第六行:空行
第七行:各进程(任务)的状态监控信息
-
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 — 进程名称&