Linux 服务器变慢诊断思路
收集整理文章
整机:top
load average:系统负载均衡,代表系统1分钟5分钟15分钟平均负载值,若三个值相加除以三乘以100%若高于60%则系统运行压力大。也可以用uptime
命令查看系统性能精简信息
在top下不停按键盘1 会查看各cup运行状态
CPU:vmstat
查看所有cpu核信息:mpstat -P ALL 2
查看每个进程使用cpu的用量分解信息:pidstat -u 1 -p 进程编号
内存:free
命令:free -m
- 经验值
应用程序可用内存/系统物理内存>70% 内存充足
应用程序可用内存/系统物理内存<20% 内存不足,需要增加内存
20%<应用程序可用内存/系统物理内存<70% 内存基本够用
查看进程内存使用:pidstat -p 进程号 -r 采样间隔秒数
硬盘:df
查看硬盘使用情况:df -h
磁盘IO:iostat
进程磁盘io使用情况: pidstat - 进程号 -r 采样间隔秒数
网络IO:ifstat
java程序cup过高定位思路
1.先用top命令找出cpu占比最高的进程
2.定位到具体的线程或代码
ps-mp 进程编号 -o THREAD,tid,time
(-m显示所有线程;-p pid 进程使用cpu时间;-o 用户自定义格式)