Linux服务器性能问题和诊断思路
总结
| 类型 | 命令 |
|---|---|
| 整机 | top |
| CPU | vmstat |
| 内存 | free |
| CPU | vmstat |
| 硬盘 | df |
| 磁盘IO | iostat |
| 网络IO | ifstat |
整机
| 具体命令 | 说明 |
|---|---|
| top | 系统整体性能 |
CPU
| 具体命令 | 说明 |
|---|---|
| vmstat -n 2 3 | 查看CPU信息 每2秒打印1次 打印3次 |
| mpstat -p ALL 2 3 | 查看所有CPU核信息 每2秒打印1次 打印3次 |
| pidstat -u 1 -p PID | 每个进程使用的CPU信息 |
内存
| 具体命令 | 说明 |
|---|---|
| free -m | 以M单位查看内存信息 |
| pidstat -p PID -r 采样间隔秒数 | 查看内存额外信息 |
硬盘
| 具体命令 | 说明 |
|---|---|
| df -h | 查看磁盘剩余空间数 |
磁盘IO
| 具体命令 | 说明 |
|---|---|
| iostat -xdk 2 3 | 磁盘IO性能评估 |
| pidstat -p PID -d 采样间隔秒数 | 查看磁盘额外信息 |
网络IO
| 具体命令 | 说明 |
|---|---|
| ifstat | 网络IO |
案例
生产环境CPU占用过高, 谈谈你的分析思路和定位?
- 先用
top命令找出CPU占比最高的 - 进一步定位:
ps -ef或者jps进一步定位,找出具体的程序
ps -ef |grep java | grep -v grep
jps -l
- 定位到具体线程或者代码
jstack PID


浙公网安备 33010602011771号