当前位置: 首页 > news >正文

线上负载过高排查(top/vmstat/ifstat/free/df)

目录

一、五大命令

二、故障排查步骤

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

2、ps -ef 或者 jps -l进一步定位

3、ps -mp位到具体线程或者代码

4、jstack精准定位到错误的地方


本文通过学习:周阳老师-尚硅谷Java大厂面试题第二季 总结的Linux+JDK命令操作相关的笔记

一、五大命令

模块命令

说明

整机

top

重点关注的是 %CPU、%MEM 、load average 三个指标。在这个命令下,按1的话,可以看到每个CPU的占用情况。也可用uptime(系统性能命令的精简版)

CPUvmstat

vmstat -n 2 3

第一个参数是采样的时间间隔数(秒),第二个参数是采样的次数

网络ifstat

内存free

free -h:以人类能看懂的方式查看物理内存

free -m:以MB为单位,查看物理内存

free -g:以GB为单位,查看物理内存

硬盘

df

du

iostat

(1)df -h    以人类能看到的方式换算

(2)du -h ./*

(3)iostat -xdk 2 3  查看I/O

系统慢有两种原因引起的,一个是CPU高,一个是大量IO操作

rkB /s:每秒读取数据量(kB)

wkB/s:每秒写入数据量(kB)

svctm I/O:请求的平均服务时间(毫秒)

await I/O:请求的平均等待时间(毫秒),值越小,性能越好

(svctm的值与await的值很接近,表示几乎没有I/O等待,磁盘性能好,如果await的值远高于svctm的值,则表示I/O队列等待太长,需要优化程序或更换更快磁盘)

util:一秒钟有百分几的时间用于I/O操作。接近100%时,表示磁盘带宽跑满,需要优化程序或者增加磁盘。

二、故障排查步骤

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

  

2、ps -ef 或者 jps -l进一步定位

3、ps -mp位到具体线程或者代码

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

-m   显示所有的线程
-p   pid进程使用cpu的时间
-o   该参数后是用户自定义格式

 

4、jstack精准定位到错误的地方

jstack 十进制进程ID | grep 小写十六进制线程ID -A60

十进制进程ID = 5101,5102转为小写十六进制线程ID = 13ee, -A60输出60行

 

package com.atguigu.test;


public class JavaDemo02{
    public static void main(String[] args){
        while(true) {
         System.out.println(new java.util.Random().nextInt(77778888));
        }
    }
}

 

 

http://www.lryc.cn/news/31985.html

相关文章:

  • Java的注解(Annotation)
  • 信息系统项目管理师:配置管理
  • web餐饮开源程序
  • 28个案例问题分析---027---单表的11个Update接口--MyBatis
  • 大数据开发治理平台 DataWorks
  • Xshell的下载、使用、配置【ssh、telnet、串口】
  • C++回顾(七)—— 面向对象模型
  • 开源监控服务uptime-kuma
  • JavaScript混淆技术:了解其核心原理和常用手段
  • 大型医院云HIS系统:采用前后端分离架构,前端由Angular语言、JavaScript开发;后端使用Java语言开发 融合B/S版电子病历系统
  • SAP UI5 Upload/Download file through NetWeaver Gateway
  • opencv校正图像
  • JavaScript:函数与箭头函数的区别
  • 八股文(四)
  • XSS挑战赛(xsslabs)1~10关通关解析
  • 什么是以太网供电POE
  • 【JUC2022】第七章 AQS、ReentrantReadWriteLock 和 StampedLock
  • Spark 磁盘作用
  • 三、Spark 内存管理
  • Java 面试常见项目问题回答
  • 文件上传和下载(原生JS + SpringBoot实现)
  • 【C语言学习笔记】:安全性
  • Linux - 磁盘存储管理 磁盘引入
  • 分割std::string成多个string
  • 3月多国更新进出口产品规定
  • nacos相关面试题
  • Linux基础命令-groupmems管理组群的成员
  • css系统化学习
  • AI的简单介绍
  • 【Linux】-- 进程间通讯