liunx系统负载量以及性能的分析
来源:互联网 发布:可怕 人心 知乎 编辑:程序博客网 时间:2024/06/07 22:00
来自:http://heipark.iteye.com/blog/1340384
一、什么是load average?
linux系统中的Load对当前CPU工作量的度量 (WikiPedia: the system load is a measure of the amount of work that a computer system is doing)。也有简单的说是进程队列的长度。Load Average 就是一段时间 (1 分钟、5分钟、15分钟) 内平均 Load 。我们可以通过系统命令"w"查看当前load average情况
[root@CNC-BJ-5-3N1 ~]# w20:01:55 up 76 days, 8:20, 6 users, load average: 1.30, 1.48, 1.69
上面内容显示系统负载为“1.30, 1.48, 1.69”,这3个值是什么意思呢?
第一位1.30:表示最近1分钟平均负载
第二位1.48:表示最近5分钟平均负载
第三位1.69:表示最近15分钟平均负载
PS. linux系统是5秒钟进行一次Load采样
二、load average值的含义
2.1 单核处理器
假设我们的系统是单CPU单内核的,把它比喻成是一条单向马路,把CPU任务比作汽车。当车不多的时候,load <1;当车占满整个马路的时候 load=1;当马路都站满了,而且马路外还堆满了汽车的时候,load>1
Load < 1
Load = 1
Load >1
2.2 多核处理器
我们经常会发现服务器Load > 1但是运行仍然不错,那是因为服务器是多核处理器(Multi-core)。假设我们服务器CPU是2核,那么将意味我们拥有2条马路,我们的Load = 2时,所有马路都跑满车辆。
Load = 2时马路都跑满了
#查看CPU core grep 'model name' /proc/cpuinfo | wc -l
3. 什么样的Load average值要提高警惕
0.7 < load < 1: 此时是不错的状态,如果进来更多的汽车,你的马路仍然可以应付。
load = 1: 你的马路即将拥堵,而且没有更多的资源额外的任务,赶紧看看发生了什么吧。
load > 5: 非常严重拥堵,我们的马路非常繁忙,每辆车都无法很快的运行
4. 三种Load值,应该看哪个?
通常我们先看15分钟load,如果load很高,再看1分钟和5分钟负载,查看是否有下降趋势。1分钟负载值 > 1,那么我们不用担心,但是如果15分钟负载都超过1,我们要赶紧看看发生了什么事情。所以我们要根据实际情况查看这三个值。
- 通过Nagios配置Load监控告警
见文:http://heipark.iteye.com/blog/1340190
参考:
Understanding Linux CPU Load - when should you be worried?
http://blog.scoutapp.com/articles/2009/07/31/understanding-load-averages
Unix/Linux 的 Load 初级解释
http://www.dbanotes.net/arch/unix_linux_load.html
– heipark
大小: 988 Bytes
大小: 978 Bytes
大小: 1.7 KB
大小: 1.2 KB
个人使用记录,最近在嵌入式端发现跑着跑着系统就死了,top发现如下:
很明显我的板子的CPU已经超载了。load average: 14.02 13.53 13.13。
应该是某些程序一直等待占用CPU。定位了问题就可以解决这个问题了。如果不了解这个,一直都不清楚是哪里出问题了。
使用sysstat工具来分析更具体的原因,pidstat可以看到线程具体信息!更方便,mpstat也可以实时监控多CPU的使用量。
- liunx系统负载量以及性能的分析
- liunx 系统性能分析
- liunx 系统性能分析工具集
- liunx下的系统性能监测工具——Nmon
- Memcache的核心性能分析以及APC缓存系统选择
- liunx系统安装nginx,以及配置、用到的简单指令
- 系统的性能分析
- liunx性能分析命令之 sar
- Liunx之nmon性能监控及分析
- Liunx 系统的VIM使用
- 如何计算WEB服务器的最大负载量
- liunx下tomcat的安装以及详解
- Linux load average负载量分析与解决思路
- Linux load average负载量分析与解决思路
- 分析系统的性能问题的维度
- 分析系统的性能问题的维度
- liunx系统下 锐捷使用以及虚拟拨号教程
- Liunx的socket通讯的流程图分析
- 设计一个类不能被继承 2.设计一个类只能在堆上创建对象。 3.设计一个类只能在栈上创建对象
- 字符转换为16进制数字
- c/c++动态内存管理
- JAVAWEB开发之权限管理(三)——shiro与企业项目整合开发(基于Spring)
- crond和crontab
- liunx系统负载量以及性能的分析
- WebSocket学习笔记
- 16进制数字转换为字符
- Android消息处理机制认识过程总结
- 数据库设计规范
- centos7
- u3d创建精灵
- 从宏定义到inline函数
- 一周Python数据类型学习-----数字