zoukankan      html  css  js  c++  java
  • 7.10

    1、使用w命令查看系统负载

      w/uptime 查看系统负载

      执行w时,会出现如下结果,其中第一行为时间,启动时长,登录几个用户(具体登录的用户可以在下列的行中看到,如果通过网络登录,则TTY会显示为PTS,直接登录终端, 显示为tty)

      load average表示负载,由三个数字组成,分别表示一分钟、五分钟和十五分钟的系统负载,即单位时间内使用CPU的进程有多少个,这个数值可以为非整数的值,如果为0则表示系统没有活动进程,标明系统处于非常空闲的状态

      执行cat /etc/proc/cpuinfo查看服务器的逻辑cpu数,其中processor表示逻辑cpu的个数,如果为0,表示有一颗cpu,如果为1表示有2课cpu,以此类推,如果为39则表示有40颗逻辑cpu

      如果只有一颗cpu,则当单位时间内的负载为1时,则是最理想的负载状况,如果有8个逻辑cpu,则单位时间的负载不高于8就可以,如果为9,则表明总有一个进程处理等待状态,我们最关注的是1分钟的内的负载值。

      uptime:此命令的执行结果和w命令的第一行相同,因此我们只需要通过w命令查看就可以了

    2、vmstat

      vmstat可以查看cpu、内存、交换分区、硬盘、系统进程相关的内容

      vmstat 1每一秒显示一次查询结果,可以通过ctrl+c结束输出

      vmstat 1 5每秒显示一次,显示五次后自动结束

      上述输出信息中主要关注r/b/swap/si/so/bi/bo/us/wa列

      r:run的简写,表示处于排队状态的进程个数,一个cpu只能同时运行一个进程,当有多个进程时,采用轮询的方式使用cpu,所有排队状态的进程都显示为r状态

      b:被cpu以外的资源阻断,处于卡死(block)状态

      swap:如果数据经常发生变化,表示swap分区和内存在频繁交换数据,原因是内存不足

      si/so:如果swap在变化,si和so肯定在变化,si表示有多少kb的数据从swap进入到内存中,so表示有多少数据从内存进入到swap

      bi/bo:bi是指从磁盘进入到内存的数据量,即为读的数据量,bo是指从内存写入到磁盘的数据量,这两个数值较大表示磁盘在频繁的读写,由于磁盘的读写速度慢,如果这两列有大量的数据,则b列的值肯定会增加,因为磁盘的读写速度肯定会限制进程的运行

      us:表示用户,级别的,如网站、mysql等用户的应用程序占用的系统资源的百分比,数值为百分比,这列的数字不会超过100,如果大于百分之五十,则表明系统资源不够用

      sy:表示系统本身的进程占用的系统资源百分比

      id:即idle,表示空闲的系统资源,其中id+sy+us=100

      wa:wait,等待cpu的百分比,有多少进程在等待cpu处理,如果此列数值较大,标明cpu资源不足

      通过vmstat可以查看系统的瓶颈在哪里

    3、top

      top查看进程使用资源情况,默认3秒显示一次,第一行中与w命令查看结果相同

      第二行表示任务数,即总任务数、running(运行)的任务数、sleeping(休眠)的任务数,stopped(停止)的任务数和zombie(僵尸进程,表示主进程已被终止,子进程仍然存在)的任务数

      第三行表示cpu百分比,即用户进程占用百分比,系统进程占用百分比,空闲的资源,ni一般为0,hi/si也不需要注意,st表示被偷走的cpu占比,如采用虚拟化时会有被偷走的cpu,通常比较关注us的占用率,通常在百分之六十以上时,对资源的损耗较大

      第四行表示物理内存使用情况,通常比较关注本行,分别显示总内存,空闲内存,使用内存,还有多少burr/cache

      第五行表示swap分区的使用情况

      接下来显示的为具体的进程,默认按照cpu的占用率进行排序,其中RES表示物理内存大小,单位是kb,

      此时按M键,可以按照内存占用率MEN进行排序,按P可以返回cpu占用率排序

      按1可以显示制定cpu的占用率,因为本系统只有一个cpu,所以显示的cpu0,再次按1可以返回

      按q可以退出top命令

      执行top -c可以查看到进程命令的全局路径

      执行top -bn 1,可以静态查看当前所有进程的资源占用情况

      其他几列比较关注PID,在杀掉进程时,可以通过PID来杀,USER标明进程是由哪个用户运行

     4、sar

      sar监控系统状态,可以查看网卡流量、cpu/内存/硬盘等状态,是linux中的瑞士军刀

      需要通过yum install -y sysstat进行安装,安装完成之后执行sar命令会提示错误

      sar命令在不使用任何选项或参数时,会调用最后使用过的历史文件,可以通过/var/log/sa文件查看sa的历史文件(sa命令每10分钟会更新一遍系统信息,并保存在/var/log/sa文件内)

      sar -n DEV 1 10查看网卡流量,每秒钟查看一次,查看十次后自动结束,其中第一列为时间,第二列为网卡名称,第三列为接收包的速率,第四列为发送包的频率,第五列为接收的速率,第六列为发送的速率,后面的三个数字不需要在意。

      正常情况下,接收包的量级在几千时,则接收量为正常

       sar命令保存历时文件的名称是以日期来命名,如17号创建的文件,则可以通过执行sar -n DEV -f /var/log/sa/sa17查看保存的历时数据,如果需要查看16号的文件,则将sa17更换为sa16,文件默认保存一个月

      sar -q 1 10查看系统负载,每秒钟更新一次,更新10次后自动结束

      上条命令主要用来查看历时数据,如执行sar -q,可以查看历时的数据,但是由于刚安装sar命令,没有历时文件,所以显示如下

      sar -b 1 5查看磁盘,也可以执行sar -b查看历时数据

       在/var/log/sa目录下除了有sa17这个文件还有sar17,但是sar17需要第二天才能生成。sa17为一个二进制文件,无法进行cat查看,只能用sar -f进行加载查看,sar17可以直接cat查看

    5、nload

      默认未安装,需要执行yum install -y epel-release,然后再安装yum install -y nload

      安装完成之后执行nload命令,就会出现一个动态显示网卡速度的页面,第一行显示网卡的名称和IP以及网卡个数,接下来分别显示进流量和出流量的当前速率、平均速率以及最大最小速率:

      按向右的方向键可以切换到第二个网卡:

      按q键可以提出上述界面。

      

  • 相关阅读:
    leetcode44:wildcard
    Python实现决策树
    PCA实现
    js触摸事件
    js中的getBoundingClientRect()函数
    Java中timer的schedule()和schedualAtFixedRate()函数的区别
    nodejs中的exports和module.exports
    为什么MySQL数据库要用B+树存储索引
    浅谈微服务中的熔断,限流,降级
    缓存击穿、缓存穿透和缓存雪崩
  • 原文地址:https://www.cnblogs.com/w494129131/p/9265350.html
Copyright © 2011-2022 走看看