1. 整机Command:top

命令结果解析:
- load average三个数表示一分钟、五分钟、十五分钟的平均负载值。若:
(三个数相加 / 3) * 100% > 60%则代表系统的负担压力重- 不停按
1还会打印出每个CPU的利用率uptime是top的精简版:
2. CPU Command:vmstat

命令结果解析:
vmstat -n 2 3每2秒采样一次,共计采样3次- 使用vmstat主要是查看proc和cpu两个参数
命令详解:
CPU命令扩展:
mpstat -P ALL 2查看所有cpu核的信息(每两秒采用一次,打印出所有cpu)
ide值表示CPU的空闲率pidstat -u 1 -p [进程PID]每个进程使用CPU的用量分解
3. 内存Command:free

命令结果解析:
free查看系统的内存free -m会详细显示,free -g会四舍五入,所以尽量使用free -m
- 扩展命令:
pidstat -p [PID] -r [采用次数]查看某个进程对内存的消耗
4. 硬盘Command:df

命令结果解析:
- 常用
df和df -h查看硬盘剩余空间数df -h显示的数据更易读
5. 磁盘I/O Command:iostat

命令结果解析:
iostat -xdk 2 3磁盘I/O性能评估,重要参数为util
- 扩展命令:
pidstat -d [采样间隔] -p [PID]查看额外
6. 网络I/O Command:ifstat

命令结果解析:
- 使用
ifstat或ifstat 1查看网络I/O,常用ifstat 1
7. 查看进程 Command:ps -ef | grep

命令结果解析:
- 常用
ps -ef或ps -aux来查看所有运行进程的详细信息。或ps -l。- 经常配合管命令
grep来具体查看某个进程的信息,ps -ef | grep [进程名/PID]
8. CPU负载过高进程定位Demo(Java)
过程解析:
写一个demo运行,模拟cpu高占用
先用top命令找出CPU占比最高的
ps-ef或者jps进一步定位,得知是一个怎么样的一个后台程序给我们惹事
- 3. 定位到具体的线程或者代码
使用ps -mp [PID] -o THREAD,tid,time查看具体线程
将需要的线程转换为16进制格式,原为十进制(英文小写格式)
jstack [进程ID] | grep [tid (16进制线程ID小写英文)] -A60
执行命令
精准定位
















