Linux常见命令使用及故障排查

目录

一、生产环境服务器变慢,诊断思路和性能评估谈谈

1、整机:top——看CPU和内存

2、CPU:vmstat

3、内存:free

4、硬盘:df

5、磁盘IO:iostat

6、网络IO:ifstat

二、假如生产环境出现CPU占用过高,请谈谈你的分析思路和定位

1、先用top命令找出CPU占比最高的2

2、ps -ef或者jps进一步定位,得知是怎样一个后台程序

3、定位到具体线程或者代码

4、将需要的线程ID转化为16进制格式

5、jstack 进程ID | grep tid(16进制线程ID小写英文)

三、对于JDK自带的JVM监控和性能分析工具用过哪些?


一、生产环境服务器变慢,诊断思路和性能评估谈谈

  • 整机:top
  • CPU:vmstat
  • 内存:free
  • 硬盘:df
  • 磁盘IO:iostat
  • 网络IO:ifstat

1、整机:top——看CPU和内存

load average:系统1分钟、5分钟、15分钟系统的平均负载值。如果这三个值相加/3>60%,说明系统负载压力重

uptime:系统性能命令的精简版

2、CPU:vmstat

查看CPU:vmstat -n 2 3  (每2秒采样一次,共计采样3次)

第一个参数是采样的时间间隔数,单位为秒;第二个参数是采样的次数

mpstat -P ALL 2:查看所有CPU核信息,每隔2秒打印一次(idle表示CPU空闲率)

pidstat -u 1 -p 进程编号:每个进程使用CPU的用量分解信息

3、内存:free

freefree -gfree -m

pidsta -p 进程号 -r 采样间隔秒数

4、硬盘:df

查看磁盘剩余空间数

5、磁盘IO:iostat

pidsta -d 采样间隔秒数 -p 进程号 

6、网络IO:ifstat

二、假如生产环境出现CPU占用过高,请谈谈你的分析思路和定位

结合Linux和JDK命令一块分析

1、先用top命令找出CPU占比最高的2

2、ps -ef或者jps进一步定位,得知是怎样一个后台程序

jps  或者 ps -ef|grep java|grep -v grep

3、定位到具体线程或者代码

ps -mp 进程号 -o THREAD,tid,time

4、将需要的线程ID转化为16进制格式

5、jstack 进程ID | grep tid(16进制线程ID小写英文)

三、对于JDK自带的JVM监控和性能分析工具用过哪些?

发布了114 篇原创文章 · 获赞 21 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_38151401/article/details/105330640