通过Linux命令查看系统平均负载的方法

这篇文章主要介绍了通过Linux命令查看系统平均负载的方法,对于服务器管理员来说非常有用,需要的朋友可以参考下

1、Linux系统的平均负载的概念

有时候我们会觉得系统响应很慢,但是又找不到原因,这时就要查看平均负载了,看它是否有大量的进程在排队等待。特定时间间隔内运行队列中的平均进程数可以反映系统的繁忙程度,所以我们通常会在自己的网站或系统变慢时第一时间查系统的负载,即CPU的平均负载。

2、查看平均负载

究竟应该如何查看平均负载呢?最简单的命令是uptime,如下所示:

代码如下:

[root@localhost ~]# uptime

11:31:11 up 11 days, 19:01,2 users,load average: 0.02, 0.01, 0.00

目前的主流服务器都是双四核,有相当强悍的CPU,做一般的应用服务的话,Linux系统的负载这块倒不用我们担心。

还可以用w命令来查看,顺便可以查看一下系统当前有哪些用户,他们占用了哪些终端,如下所示:

代码如下:

[root@localhost ~]# w

11:33:00 up 11 days, 19:03,2 users,load average: 0.00, 0.00, 0.00

USER TTYFROMLOGIN@ IDLE JCPU PCPU WHAT

root pts/1113.57.224.309:032:11m0.04s0.04s -bash

root pts/2113.57.224.311:310.00s0.02s0.00s w

另外,还有动态命令top,这个命令也可以反映系统负载情况。在下面的命令提示中,我们只关心加粗字体部分。

代码如下:

[root@localhost ~]# top

top - 11:37:47 up 11 days, 19:08,2 users,load average: 0.00, 0.00, 0.00

Tasks: 122 total, 1 running, 121 sleeping, 0 stopped, 0 zombie

Cpu(s):0.1%us,0.0%sy,0.0%ni, 99.9%id,0.0%wa,0.0%hi,0.0%si,0.0%st

Mem: 4044136k total,1435504k used,2608632k free, 274740k buffers

Swap:8193140k total,0k used,8193140k free, 941884k cached

上面加粗字体显示的内容是什么意思呢?再通过uptime查看一下。

代码如下:

[root@localhost ~]# uptime

11:39:36 up 11 days, 19:16,1 user,load average: 0.09, 0.03, 0.01

原来它所表示的是过去的1分钟、5分钟和15分钟内进程队列中的平均进程数量。

那么,如何衡量当前系统是否负载过高呢?可以从以下几点来考虑。

如果每个CPU(可以按CPU核心的数量计算)当前的活动进程数不大于3,则系统性能良好。

如果每个CPU当前的活动进程数不大于4,表示可以接受。

如果每个CPU当前的活动进程数大于5,则系统性能问题严重。

还可以结合vmstat命令来判断我们的系统是否过于繁忙,如果确定很繁忙的话,就要考虑是否更换服务器或增加CPU的个数了。总结如下:

如果r经常大于3或4,且id经常少于50,则表示CPU的负荷很重。

在上面例子中,我的服务器是PowerEdge 2850,CPU是双核双线程的,则0.09/2=0.045(即负载值/真实CPU个数),此系统的CPU负载基本可以忽略了。事实上,现在主流服务器 的CPU都很强悍,如果不是应用虚拟化等特殊场景,基本上负载都很校

按照前面的计算公式,我所配置Nagios报警的CPU负载阈值 为CPU核心的数量(即CPU的物理个数×核数)。还是以我的服务器PowerEdge 2850为例,其CPU核心的数量为2×2=4,则设置报警值为4。这样设置是合理的,因为毕竟不是每个应用服务器的CPU都支持多核心,毕竟整个网站中 还有些性能比较弱的服务器是用来做备份的。

(0)

相关推荐

  • linux怎样使用top命令查看系统状态

    Linux系统可以通过top命令查看系统的CPU.内存.运行时间.交换分区.执行的线程等信息.通过top命令可以有效的发现系统的缺陷出在哪里.是内存不够.CPU处理能力不够.IO读写过高. 操作方法 ...

  • CentOS下top和free命令查看系统中空闲内存的方法

    下面介绍使用top和free命令查看系统中空闲内存 所以你执行top命令看到的 [root@linuxzgf ~]# top Mem: 8174492k total, 7124268k used,并不 ...

  • 如何利用dos命令查看系统硬件信息

    利用简单的dos命令查看系统硬件的基本信息以及故障检测. 操作方法 01 在"开始"菜单的"附件"中选择"命令提示符" 02 打开命令提示符 ...

  • win8系统查看系统历史补丁的方法

    补丁就是对于大型软件系统(如微软操作系统)在使用过程中暴露的问题(一般由黑客或病毒设计者发现,或者是用户使用过程中产生的,把错误信息发送到服务器端,开发人员进行纠正的一项工作)而发布的解决问题的小程序 ...

  • 解决win10无法查看系统更新记录的方法

    在win10系统下,当用户对系统进行补丁更新后,系统将为我们自动记录所更新的补丁内容,从而方便用户了解系统已更新补丁的详情,但在部分win10系统下,用户却出现无法查看系统补丁历史的问题,就造成用户无 ...

  • 如何查看Win7激活码?Win7查看系统激活密钥的方法

    如何查看Win7激活码?可能很多用户都不知道,电脑刚买来的时候,系统是已经激活的了,如果重装系统后,系统需要重新激活才能使用,这个时候就需要输入激活码(密钥)激活,可是很多用户不知道什么是激活码,不知 ...

  • 不可以运行的Linux命令:破坏系统

    文中列出的命令绝对不可以运行,即使你觉得很好奇也不行,除非你是在虚拟机上运行(出现问题你可以还原),因为它们会实实在在的破坏你的系统.所以不在root等高级管理权限下执行命令是很好的习惯. 早晚有一天 ...

  • Linux命令查看文件(linux怎么搜索文件内容)

    请关注本头条号,每天坚持更新原创干货技术文章.如需学习视频,请在微信搜索公众号"智传网优"直接开始自助视频学习1. cat命令简介本文主要讲解Linux上cat命令的作用与常见使用 ...

  • 怎么用CMD命令查看系统用户的权限

    有时候在使用某个账户操作文件,比如删除,修改时,系统会提示你的权限不够,不能进行操作.这是因为你的账户权限不够.其实可以用cmd命令查看某个用户的权限. 操作方法 01 按ctrl+r打开" ...