本文章在Centos 8版本进行的操作
全量监控TOP
输入top命令时使用,空格隔开
d:指定更新的间隔,以秒计 算。
q:没有任何延迟的更新。如果使用者有超级用户,则top命令将会以最高的优先序执行。
c:显示进程完整的路径与名称。
S: 累积模式,会将己完成或消失的子行程的CPU时间累积起来。
s:安全模式。
i:不显示任何闲置(Idle)或无用(Zombie)的行 程。
n:显示更新的次数,完成后将会退出to
第一行top
- 10:49:26 当前系统时间
- 5 days, 18:58 系统连续运行了5天18小时50分钟
- 1 users 当前有1个用户登录系统
- load average: 0.00,0.01, 0.05 三个数分别是1分钟、5分 钟、15分钟的负载情况,每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑 CPU的数量,结果高于5的时候就表明系统在超负荷运转了。
第二行Task
- 201 total 系统共有201个进程
- 1 runing 有1个是正在运行的
- 200 sleeping 有200个在休眠
- 0 stopped 有0个进程是已停止的
- 0 zombie 僵尸进程有0个
第三行Cpu
- 0.1% us 用户空间占用CPU的百分比。
- 0.1% sy 内核空间占用CPU的百分比。
- 0.0% ni 改变过优先级的进程占用CPU的百分比
- 99.8% id 空闲CPU百分比
- 0.0% wa IO等待占用CPU的百分比
- 0.0% hi 硬中断(Hardware IRQ)占用CPU的百分比
- 0.0% si 软中断(Software Interrupts)占用CPU的百分比
内核空间是系统级别的cpu操作,避免用户控件操作cpu导致系统崩溃。更多了解
第四行内存状态
- 3832724kb total 物理内存总量(4GB)
- 490848kb free 空闲内存总量(0.5G)
- 1093224kb used 使用中的内存总量(1GB)
- 2248652kb buffer/cache 缓存的内存量,内存不够会自动清除 (2.1GB)
第五行交换分区
在物理内存使用完之后,将磁盘空间(SWAP交换分区)虚拟成内存来使用,虚拟内存也使用完就会报错。更多了解
- 8388604kb total 交换区总量(8GB)
- 8388604kb free 空闲交换区总量(8GB)
- 0kb used 使用的交换区总量(0gb)
- 2406192kb avail Mem 可用交换区总量(2.3GB)
内存总量(used) 现在系统内核控制的内存数,空闲内存总量(free)是内核还未纳入其管控范围的数量。
纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到free中去,因此在linux上free内存会越来越少,但不用为此担心。
第七行进程的状态监控
- PID 进程id
- USER 进程所有者
- PR 进程优先级
- NI nice值。负值表示高优先级,正值表示低优先级
- VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RESRES 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
- SHR 共享内存大小,单位kb
- S 进程状态。
- D=不可中断的睡眠状态
- R=运行
- S=睡眠
- T=跟踪/停止
- Z=僵尸进程
- %CPU 上次更新到现在的CPU时间占用百分比
- %MEM 进程使用的物理内存百分比
- TIME+ 进程使用的CPU时间总计,单位1/100秒
- COMMAND 进程名称(命令名/命令行)
进入top命令后使用
- P:以占据CPU百分比排序
- M:以占据内存百分比排序
- T:以累积占用CPU时间排序
- q:退出命令:按q键退出top查看页面
- s:修改刷新时间间隔。按下s键,然后按下数字,即可修改刷新时间间隔为你输入的数字,单位为秒。例如:按下s键,在按数字1键,即可实现每秒刷新一次
- k:终止指定的进程。按下k键–>再输入要杀死的进程的pid–>按enter键–>(选择信号类型,以数字标示,默认15为杀死)本步可省略按enter键(常用为-9)
进程监控PS
监听的端口
netstat -n | grep tcp
监控java线程数
ps -eLf | grep java | wc -l