开发小运维-常用Linux资源监控命令

文章目录

  • 简介
  • 常用命令
    • /proc/meminfo(内存)
    • free(内存信息)
    • top(进程动态)
    • df (磁盘信息)
    • du(磁盘信息)
    • ps(进程状态)
    • vmstat(内存统计)
    • netstat(网络状态)
    • iostat(磁盘IO)

简介

日常开发中,我们的应用都是在linux环境上运行,环境在运行中可能会出现各种状况,比如

  • 日志没有定时清理导致磁盘爆满
  • 线程池嵌套使用导致线程等待
  • 无限制的数据计算导致cpu飙高
  • 数据加载过多进入内存导致内存爆满

当出现上述各种情况等,我们需要通过linux监控命令对环境状态进行问题排查,本文主要总结几个日常使用频繁的监控命令

常用命令

/proc/meminfo(内存)

/proc/meminfo 是一个报告可用和已用内存量的虚拟文件,它包含有关系统内存使用情况以及内核使用的缓冲区和共享内存的实时信息。进程的内存使用信息也可以通过 /proc/[pid]/statm 和 /proc/[pid]/status 来查看。

cat /proc/meminfo

在这里插入图片描述

free(内存信息)

free命令可以帮助你深入了解系统内存(RAM)的使用情况等,它是对 /proc/meminfo 收集到的信息的一个概述

free [选项]

在这里插入图片描述
命令选项介绍:

选项描述
-h通过调整 KB、GB 等数据单位,以人类可读的形式打印信息
-s在给定的时间间隔参数后更新 free 输出
-t显示系统和交换内存的总量
-g以 GB 为单位显示数据
-m以 MB 为单位打印信息
-k以 KB 为单位显示输出

输出数据描述:

参数描述
total表示安装内存
used显示系统已使用的存储空间 (used= total – free – buff/cache)
free可用于新进程的可用内存量(free= total – used – buff/cache)
sharedtmpfs(临时文件系统)使用的内存量
buff/cache表示缓冲区和缓存使用的内存总和 (Buffers + Cache)
available它估计有多少内存可用于启动新应用而无需交换。它是free 内存和可以立即使用的 buff/cache 的一部分的总和

top(进程动态)

top命令用于实时显示进程动态的工具,可以显示系统中各个进程的资源占用情况,如CPU使用率、内存使用率等。

top  [选项]

在这里插入图片描述
命令选项介绍:

选项描述
-b批处理
-c显示完整的治命令
-s保密模式
-S累积模式
-i<时间>设置间隔时间
-p<进程号>指定进程
-n<次数>循环显示的次数

输出数据描述:

参数描述
第一行表示当前系统时间、有两个用户登录,load average: 0.00, 0.01, 0.05 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况
第二行描述任务(进程)情况,系统现在共有289个进程,其中处于运行中的有1个,288个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。
第三行表示cpu状态信息
0.2%us — 用户空间占用CPU的百分比。
0.2%us — 用户空间占用CPU的百分比。
0.2% sy — 内核空间占用CPU的百分比。
0.0% ni — 改变过优先级的进程占用CPU的百分比
99.6% id — 空闲CPU百分比
0.0% wa — IO等待占用CPU的百分比
0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比
0.0% si — 软中断(Software Interrupts)占用CPU的百分比
第四行表示当前系统时间、有两个用户登录,load average: 0.00, 0.01, 0.05 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况
第五行表示内存状态信息
32761424k total — 物理内存总量
2411932k used — 使用中的内存总量
20718732k free — 空闲内存总量
9630760k buffers — 缓存的内存量
PID进程id
USER进程所有者
PR进程优先级
NInice值。负值表示高优先级,正值表示低优先级
VIRT进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR共享内存大小,单位kb
S进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU上次更新到现在的CPU时间占用百分比
%MEM进程使用的物理内存百分比
TIME+进程使用的CPU时间总计,单位1/100秒
COMMAND进程名称(命令名/命令行)

df (磁盘信息)

df命令可以快速获取 磁盘 被占用了多少空间,目前还剩下多少空间等信息

df [选项]

在这里插入图片描述

du(磁盘信息)

du命令可以统计 目录(或文件)所占磁盘空间的大小
在这里插入图片描述

ps(进程状态)

ps命令用于查看当前运行的进程状态的命令

ps  [选项]

在这里插入图片描述
命令选项介绍:

选项描述
-e显示所有进程
-f使用全格式显示进程信息
-l显示长格式的进程信息
-u显示与指定用户相关的进程信息
-p显示指定进程ID的进程信息
-o自定义输出格式

vmstat(内存统计)

vmstat 命令显示实时的和平均的统计,覆盖 CPU、内存、I/O 等内容。例如内存情况,不仅显示物理内存,也统计虚拟内存。
在这里插入图片描述
输出数据描述:

参数描述
r运行队列进程个数
b在等待IO的进程数
swpd已经使用的交换内存(kb)
free空闲的物理内存(kb)
buff用作缓冲区的内存数(kb)
cache用作高速缓存的内存数(kb)
si每秒交换分区写入内存量
so每秒内存写交换分区的量
bi每秒从块设备读取的块数量
bo每秒写入块设备的块数量
wa等待io 所消耗的cpu 时间
st用于虚拟机,如果你的机器是虚拟化设备,虚拟 CPU 等待实际 CPU 的时间的百分比

netstat(网络状态)

netstat 网络连接状态查看命令,可以查看的网络中的传输层(TCP、UDP)信息,日常可以查看某个端口是否开放

netstat  [选项]

在这里插入图片描述

命令选项介绍:

选项描述
-a(all)显示所有选项,默认不显示LISTEN相关
-t(tcp)仅显示tcp相关选项
-u(udp)仅显示udp相关选项
-n拒绝显示别名,能显示数字的全部转化成数字
-l仅列出有在 Listen (监听) 的服務状态
-p显示建立相关链接的程序名
-r显示路由信息,路由表
-e显示扩展信息,例如uid等
-s按各个协议进行统计
-c每隔一个固定时间,执行该netstat命令

输出数据描述:

参数描述
Proto协议类型,如 TCP 或 UDP
Recv-Q接收队列的长度,即等待进程读取的数据量
Send-Q发送队列的长度,即等待网络传输的数据量
Local Address本地IP地址和端口号
Foreign Address连接的远程IP地址和端口号
State连接的状态,如 ESTABLISHED、TIME_WAIT 等(包含TCP三次和四次挥手过程中的状态)

iostat(磁盘IO)

iostat 命令(即:I/O statistics)是用来对系统的磁盘操作进行监视

iostat  [选项]

在这里插入图片描述

命令选项介绍:

选项描述
-c显示CPU的使用情况
-d显示磁盘的使用情况
-k以KB为单位显示
-m以MB为单位显示
-x显示详细信息
-t显示终端和CPU的信息

输出数据描述:

参数描述
%user表示处在用户模式下的CPU时间百分比
%nice表示处在带nice值的用户模式下的CPU时间百分比
%system表示处在系统模式下的
%iowait表示CPU等待输入输出完成的时间百分比
%steal表示虚拟CPU的无意识等待时间百分比
%idleCPU空闲时间百分比
tps设备每秒的传输次数
kB_read/s每秒从设备读取的数据量
kB_wrtn/s每秒向设备写入的数据量
kB_read读取的总数据量
kB_wrtn写入的总数据量

❤️如果 %iowait 的值过高,表示硬盘存在 I/O 瓶颈,%idle 值高,表示 CPU 较空闲,如果 %idle值 高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量。%idle 值如果持续低于 10,那么系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/404624.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Tita的OKR :销售部 OKR案例

销售集团目标 – OKR示例 目标&#xff1a;为我们的销售团队招募世界级精英 主要成果&#xff1a; KR1&#xff1a;在10月底之前雇用10个新的AE KR2&#xff1a;在11月底之前雇用20个新SDR KR3&#xff1a;到10月底雇用5名新的销售经理 KR4&#xff1a;维持 4&#xff1a;1的…

Linux date命令

概述 date 命令用于显示或设置系统的时间与日期&#xff0c;语法格式为&#xff1a;“date [指定的格式]”。用户只需在强大的 date 命令后输入以“”号开头的参数&#xff0c;即可按照指定格式来输出系统的时间或日期。 [rootlocalroot ~]# uname -a #当前系统 Linux…

[vue] pdf.js / vue-pdf 文件花屏问题

vue-pdf内核也是pdf.js&#xff0c;修改方式一样 在pdf.worker.js中加入几行代码&#xff0c;追加到”precinct.zeroBitPlanesTree zeroBitPlanesTree;“之后。 for (var l 0; l < layerNumber; l) {if (readBits(1) ! 0) {throw new JpxError("Invalid tag tree&qu…

网络编程/在哪些场景中不必要进行网络字节序转换? Windows Sockets: Byte Ordering

文章目录 概述字节序必须转换字节序的的情况不必转换字节序的的情况字节序转换的例程字节序转换函数字节序转换可以不生硬字节序和位序 概述 本文主要讲述了在哪些场景下必须要进行大小端字节序转换&#xff0c;在哪些场景下可以不用进行大小端字节序转换&#xff0c;IP和端口…

基础第3关:LangGPT结构化提示词编写实践

提示词&#xff1a; # Role: 伟大的数学家 ## Profile - author: LangGPT - version: 1.0 - language: 中文 - description: 一个伟大的数学家&#xff0c;能够解决任何的数学难题 ## Goals: 根据关键词进行描述&#xff0c;避免与已有描述重复。 ## Background: 你正在被…

基于Java语言的高能耗企业 水-电-气-热-油等数据采集系统-能源管理系统-源码

基于Java语言的高能耗企业 水-电-气-热-油-空压机等数据采集系统-能源管理系统-在线监测系统 场景介绍 介绍 适用于建筑、工厂、商场、医院、园区、高耗能企业、城市双碳建设平台等的水、电、气、热、油等能源数据采集、加工、分析、预警、碳指标、碳排放计算等场景&#xff…

Mysql(三)---增删查改(基础)

文章目录 前言1.补充1.修改表名1.2.修改列名1.3.修改列类型1.4.增加新列1.5.删除指定列 2.CRUD3.新增(Create)3.1.单行插入3.2.指定列插入3.3.多行插入 4.数据库的约束4.1.约束的分类4.2.NULL约束4.3.Unique约束4.4.Default 默认值约束4.5.PRIMARY KEY&#xff1a;主键约束4.6.…

指挥中心控制台如何选择合适的定制厂家

在构建高效、安全的指挥中心过程中&#xff0c;选择一家合适的控制台定制厂家至关重要。控制台作为指挥中心的核心组成部分&#xff0c;不仅承载着设备集成、信息显示的重任&#xff0c;还直接关系到操作人员的舒适度和工作效率。因此&#xff0c;在挑选定制厂家时&#xff0c;…

Flask详细教程

1、Flask是什么&#xff1f; Flask是一个非常小的PythonWeb框架&#xff0c;被称为微型框架&#xff08;类似Java的SpringBoot&#xff09;&#xff1b;只提供了一个稳健的核心&#xff0c;其他功能全部是通过扩展实现的&#xff1b;意思就是我们可以根据项目的需要量身定制&a…

介绍 Kettle 的 Spoon 图形化界面工具

Kettle Spoon 集成开发环境工具启动后&#xff0c;弹出 Welcome 的欢迎页面 目录 一、界面构成二、菜单说明1. 【文件(F)】菜单2. 【编辑】菜单3. 【视图】菜单4. 【执行】菜单5. 【工具】菜单6. 【帮助】菜单7. 转换工程快捷菜单图标8. 任务工程快捷菜单图标 一、界面构成 &…

使用百度文心智能体创建AI旅游助手

百度文心智能体平台为你开启。百度文心智能体平台&#xff0c;创建属于自己的智能体应用。百度文心智能体平台是百度旗下的智能AI平台&#xff0c;集成了先进的自然语言处理技术和人工智能技术&#xff0c;可以用来创建属于自己的智能体应用&#xff0c;访问官网链接&#xff1…

【JPCS独立出版,EI稳定检索】2024年工业机器人与先进制造技术国际学术会议(IRAMT 2024,9月27-29)

2024年工业机器人与先进制造技术国际学术会议&#xff08;IRAMT 2024&#xff09;将于2024年9月27-29日在中国成都举办。 此次会议将围绕工业机器人、机电技术、机械及制造等领域的最新研究成果展开讨论&#xff0c;并广泛邀请了国内外领域内的著名专家与学者。会议旨在搭建一个…

[linux#39][线程] 详解线程的概念

线程&#xff1a;是进程内的一个执行分支。线程的执行粒度比进程要细 什么是线程&#xff1f; • 在一个程序里的一个执行路线就叫做线程&#xff08;thread&#xff09;。更准确的定义是&#xff1a;线程 是“一个进程内部的控制序列” • 一切进程至少都有一个执行线程 • …

基于SpringBoot的Java个人博客系统的设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言具体实现截图详细视频演示技术栈系统测试为什么选择我官方认证玩家&#xff0c;服务很多代码文档&#xff0c;百分百好评&#xff0c;战绩可查&#xff01;&#xff01;入职于互联网大厂&#xff0c;可以交流&#xff0c;共同进步。有保障的售后 代码参考数据库参…

原生HTML5、CSS、JavaScript实现简易网易云音乐播放

1.效果图 2.源码 1.index.html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>网易云音乐</title><link rel"stylesheet" href"../CSS/index.css"> </head>…

最小路径和[中等]

优质博文&#xff1a;IT-BLOG-CN 一、题目 给定一个包含非负整数的m x n网格grid&#xff0c;请找出一条从左上角到右下角的路径&#xff0c;使得路径上的数字总和为最小。 说明&#xff1a;每次只能向下或者向右移动一步。 示例 1&#xff1a; 输入&#xff1a;grid [[…

新智元 | 百万在线,大圣归来!《黑神话:悟空》石破天惊,RTX 4090D飞越花果山

本文来源公众号“新智元”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;百万在线&#xff0c;大圣归来&#xff01;《黑神话&#xff1a;悟空》石破天惊&#xff0c;RTX 4090D飞越花果山 【新智元导读】等待四年&#xff0c;《黑…

Java常用集合(List、Map)类型相关问题整理

一、背景 针对Java基础集合的部分&#xff0c;对一些常见的问题进行整理&#xff0c;方便后续能够随时复习 二、问题与回答 &#xff08;1&#xff09;Java集合类ArrayList初始化时数组的默认长度是多少&#xff1f; 答&#xff1a;在new ArrayList() 这段代码执行完后&a…

软件测试基础入门

一、基础概念 什么是软件&#xff1a;控制计算机硬件的工具&#xff0c;操作系统软件、应用软件 软件基本组成&#xff1a;客户端、服务器、数据库 软件产生过程&#xff1a;需求构思--> 需求文档 -->UI/UE -- >产品研发 -->产品测试 -- >部署上线 什么是软…

web实现drag拖拽布局

这种拖拽布局功能其实在电脑操作系统或者桌面应用里面是经常使用的基础功能&#xff0c;只是有时候在进行web开发的时候&#xff0c;对这个功能需求量不够明显&#xff0c;但却是很好用&#xff0c;也很实用。能够让用户自己拖拽布局&#xff0c;方便查看某个区域更多内容&…