IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 服务器中使用Top命令后,参数解释 -> 正文阅读

[系统运维]服务器中使用Top命令后,参数解释

一、问题描述

??top命令是最方便可用的服务器监控命令,可以看出服务器的当前负载量,CPU占用率,内存占用率等重要信息。
展示两种情景:
情景一:top命令即可;要是想要退出就按q即可

情景二:在情景一的基础上按一下1,数字1即可;在按1即可回到情景二;

??看的头大,这都是啥啊!赶紧查一波!整理一下吧。

二、top命令详解

下面详细解说一下top命令里面的各个指标:

1. 系统概况

top - 17:53:48 up 341 days, 19:35,  4 users,  load average: 0.00, 0.01, 0.05
  • up :时间格式为分,如上图表示已经运行341天19小时35分钟。能够较好的反映当前系统的高可用性。
  • users:表示当前的用户数,如图表示4个用户登录该系统。
  • load average:表示服务器的负载情况,分别指1分钟,5分钟,15分钟内的负载量。
    load指标说明
    load<0.7 * processor(CPU线程数) 表示当前系统运行良好;
    1 * processor<load<3 * processor,需要参考内存、CPU、网络和IO等指标;
    load>5 * processor 表示负载过大;
    实时负载通过r+d来计算

2. 进程概况

Tasks: 326 total,   1 running, 325 sleeping,   0 stopped,   0 zombie
  • total:当前系统的总线程数
  • running:当前系统正在运行的线程数
  • sleeping:当前系统阻塞的线程数
  • stopped:当前系统停止态的进程数
  • zombie:当前系统的僵尸态进程数

3. CPU概况

%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
  • us:用户进程CPU使用占比
  • sy:系统进程CPU使用占比,内核态CPU使用率
  • ni:用户进程空间改变过优先级的进程CPU占用率
  • id:空闲的CPU占比
  • wa:等待输入输出IO使用CPU占比(wa:使用过高时,要考虑IO的性能是否有瓶颈,可以使用iostat,sar命令进一步分析)
    可以使用命令查看硬件中断:
 cat /proc/interrupts > hil.txt
 sleep 2
 cat /proc/interrupts > hi2.txt  
 vimdiff hil.txt  hi2.txt

也能使用

/proc/interrupts > hil.txt
sleep 2
cat /proc/interrupts > hi2.txt

然后使用vim查看hi1.txt 然后切换到vim的命令行下vsplit hi2.txt

  • hi:硬中断占用CPU百分比,使用率过高时,表示当前硬件中断占用很大的百分比。
    一般硬件中断可以分析文件/proc/interrupts,/proc/irq/pid/smp_affinity、服务irqbalance是否配置,以及CPU的频率设置,通过这些可以帮助系统打散优化系统的硬件中断
  • si:软中断占用CPU百分比
    从网卡过来的数据包多(收发包多),如果si高,则看网络收发包高的进程。

Linux kernel通过一种软件的方法来模拟硬件中断模式,是为软中断。常见的一般软中断一般都是和网络相关,从网卡到IP层的数据报文收发都是由软件中断来处理的,长时间的写日志也可能产生软中断
当软件中断出现瓶颈时,系统有个进程ksofttirqd,每个CPU都有自己对应的ksofttirqd/n(n为CPU的逻辑ID),每个ksofttirqd的内核线程都会去运行对应的ksofttirqd()函数来处理自己的中断队列上的软件中断,所以当网络出现阻塞的时候,软件中断程序ksofttirqd肯定出现瓶颈。可以通过ps命令查看进程ksofttirqd的使用信息 ps aux|grep ksofttirqd

  • st:虚拟机使用CPU占用率。一个宿主机下存在多个虚拟机时,比较忙的虚拟机会抢占比较空闲的虚拟机资源
  • CPU(S):CPU占用率的平均值。

注-默认情况下显示的是所有CPU的平均值,如果想看每个CPU具体值,则按下数字1即可:

4.内存概况

在Linux中,内存一共分为两块:物理内存 和 交换区。
物理内存是真正的内存,而内存资源毕竟有限,因此当物理内存不够的时候,根据LRU置换算法,那些很长时间没被使用的数据将会被存入交换区。交换区其实是硬盘,并非内存。当交换区存在数据时说明物理内存不够了。

KiB Mem :  1883724 total,   300584 free,   646088 used,   937052 buff/cache
KiB Swap:        0 total,        0 free,        0 used.  1062956 avail Mem
  • Mem 1883724 total:物理内存的总量
  • Mem 300584 free:物理内存的空闲量
  • Mem 646088 used:物理内存使用量
  • Mem 937052 buff/cache:物理内存内核缓存使用量
  • Swap total:交换区总量
  • Swap free:交换区空闲量
  • Swap used:交换区使用量
  • Swap 1062956
    avail Mem:虚拟内存总量

注:buff/cache虽然占用物理内存,但当内存不够时也可以直接使用,因此物理内存的可使用空间为:free + buff/cache。

5. 进程详情

PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
1784 root      20   0 2072440  73204   8768 S  0.7  3.9 108:58.75 java
1182 root      20   0   46540   2624   1988 S  0.3  0.1  11:06.20 AliYunDunUpdate
  • PID:进程ID
  • USER:进程所有者
  • PR:进程优先级
  • NI:nice值
  • VIRT:进程所占虚拟内存大小???
  • RES:进程所占物理内存大小(kb)
  • SHR:进程所占共享内存大小(kb)
  • %CPU:CPU占用百分比
  • %MEM:物理内存占用百分比
  • TIME+:上次更新到现在进程使用的CPU时间总计
  • COMMAND:启动该进程的命令

小技巧

  1. 间隔刷新
    进入top后按下d,即可设置间隔刷新时间,默认是3秒。

  2. 添加进程监控字段
    进入top后按下f,即可添加/减少需要监控的进程信息。

* PID     = Process Id             vMn     = Minor Faults delta
* USER    = Effective User Name    USED    = Res+Swap Size (KiB)
* PR      = Priority               nsIPC   = IPC namespace Inode
* NI      = Nice Value             nsMNT   = MNT namespace Inode
* VIRT    = Virtual Image (KiB)    nsNET   = NET namespace Inode
* RES     = Resident Size (KiB)    nsPID   = PID namespace Inode
* SHR     = Shared Memory (KiB)    nsUSER  = USER namespace Inode
* S       = Process Status         nsUTS   = UTS namespace Inode
* %CPU    = CPU Usage
* %MEM    = Memory Usage (RES)
* TIME+   = CPU Time, hundredths
* COMMAND = Command Name/Line
  PPID    = Parent Process pid
  UID     = Effective User Id
  RUID    = Real User Id
  RUSER   = Real User Name
  SUID    = Saved User Id
  SUSER   = Saved User Name
  GID     = Group Id
  GROUP   = Group Name
  PGRP    = Process Group Id

前面有*的说明已经显示了。

  1. 保存设置
    对top进行设置后,默认是不保存配置的,只有按了大写的W后才会保存。

  2. 监控结果输出到文件

top -d 1 -n 3 > top.log

三、参考文献

  • 参考一:https://www.cnblogs.com/ngd-mzl/p/15688327.html
  • 参考二:https://blog.csdn.net/u010425776/article/details/78219339
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-06-01 15:29:48  更:2022-06-01 15:30:22 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 14:27:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码