Linux常见命令使用及故障排查 - Go语言中文社区

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监控和性能分析工具用过哪些?

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_38151401/article/details/105330640
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-04-18 19:31:41
  • 阅读 ( 962 )
  • 分类:Linux

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢