Linux监控分析实战-1
监控概述及5个大指标
- cpu
- mem 内存
- io 磁盘交互
- load 负载
- Network 网络
- 它们之间关系是相互彼此依赖,任何一个高负载都会到导致其他指标出现问题;
- 网卡的大吞吐量可能导致更多的cpu开销;
- 大量的CPU开销又会尝试更多的内存使用请求;
- 大量来自内存与磁盘的请求可能导致更多的cpu以及IO问题;
CPU
好:user% + sys% < 70%
一般:user% + sys% =85%
糟糕:user% + sys% >=90%
例如:1、如果user%持续超过90%,就是程序导致的;
2、如果sys%持续超过90%,就是内核参数或是Linux设置问题;
user time:非内核操作消耗cpu的时间(程序消耗的cpu),持续超过90%,可能是系统中使用了大量的算法或者复杂的计算亦或者是不合理的代码导致该值比较大;
sys time是内核操作消耗CPU的时间(操作系统和Linux内核本身消耗的cpu)。如果这个值一上去了,整个系统的性能就下来了,它能反映系统本身的情况;
Load average
TOP命令查看系统状态
第一行
指一段数据内cpu正在处理+等待CPU处理的进程数之和的统计信息,即CPU使用队列的长度统计信息。它包含的信息不是CPU是使用率情况,反应了CPU的使用情况及申请情况。
理想的Load Average < CPU个数*核数*0.7
CPU个数:grep ’physical id' /proc/cpuinfo | sort -u
CPU核数: grep 'core id' /proc/cpuinfo | sort -u | wc -l
如何理解CPU和Load之间关系
Load低,CPU使用高 ----->CPU使用率高说明很繁忙,Load低说明没有排队现象;
Load高,CPU使用率低 ---->CPU使用率低说明不忙,Load高说明排队现象很严重;
Load average :三个值分别为1分钟、5分钟、15分钟前到现在的平均值【这三个一般会小于1,如果持续高于5,请仔细查看那个程序影响系统的运行】
TOP命令
Tasks进程:第二行
Cpu(s)第三行
如何看多核?
对于多核CPU来说,CPU 0是相当关键的,因为CPU各核间的调度都是通过CPU0完成,那么CPU 0的负载高,就会影响其它核的性能;
windows下:任务管理器--->某进程右键--->设置相关性
Linux下:利用taskset命令,设置 并限制这个进程能被运行在那些核上;
Mem内存 第四行
第五行交换区
top命令第5行“Swap: 392184k total, 0k used, 392184k free, 259152k cached”显示内容依次为“交换区总量”、“已使用交互区总量”、“空闲交换区总量”、“缓冲的交换区总量”。
第六行
top命令第5行“PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND ”显示内容依次为“进程ID”、“进程所有者”、“优先级”、“nice值,负值表示高优先级,正值表示低优先级”、“进程使用的虚拟 内存总量”、“进程使用的、未被换出的物理内存大小”、“共享内存大小”、“进程状态”、“上次更新到现在的CPU时间占用百分比”、“进程使用的物理内 存百分比”、“进程使用CPU总时间”、“命令名、命令行”。
Linux监控分析实战-1的更多相关文章
- Linux 监控分析
一.硬件基础 Cpu 逻辑的处理.计算.判断 现代分时多任务操作系统对 CPU 都是分时间片使用的:比如A进程占用10ms,然后B进程占用30ms,然后空闲60ms, 再又是A进程占10ms,B进 ...
- 《Unix/Linux日志分析与流量监控》书稿完成
<Unix/Linux日志分析与流量监控>书稿完成 近日,历时3年创作的75万字书稿已完成,本书紧紧围绕网络安全的主题,对各种Unix/Linux系统及网络服务日志进行了全面系统的讲解,从 ...
- 优化系统资源ulimit《高性能Linux服务器构建实战:运维监控、性能调优与集群应用》
优化系统资源ulimit<高性能Linux服务器构建实战:运维监控.性能调优与集群应用> 假设有这样一种情况,一台Linux 主机上同时登录了10个用户,在没有限制系统资源的情况下,这10 ...
- 优化Linux内核参数/etc/sysctl.conf sysctl 《高性能Linux服务器构建实战:运维监控、性能调优与集群应用》
优化Linux内核参数/etc/sysctl.conf sysctl <高性能Linux服务器构建实战:运维监控.性能调优与集群应用> http://book.51cto.com/ar ...
- Linux操作系统监控分析
性能分析点:1. 负载机2.网络传输3.硬件4.应用程序线程池5.数据库连接池6.代码业务逻辑7.数据库sql执行时间8.jvm(GC) 操作系统硬件:cpu:计算.逻辑处理:CPU的颗粒数越多,CP ...
- Linux性能监控分析命令(五)—free命令介绍
性能监控分析的命令包括如下:1.vmstat2.sar3.iostat4.top5.free6.uptime7.netstat8.ps9.strace10.lsof 命令介绍:free命令是监控Lin ...
- Linux性能监控分析命令(四)—top命令介绍
性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof ======= ...
- Linux性能监控分析命令(三)—iostat命令介绍
性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof 命令介绍: i ...
- Linux性能监控分析命令(二)—sar命令介绍
性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof ======= ...
随机推荐
- Android Studio2.2.2下RecyclerView的使用
1,概述 RecyclerView可以完全代替ListView.GridView,整体上看RecyclerView架构,提供了一种插拔式的体验,高度的解耦,异常的灵活,通过设置它提供的不同Layout ...
- 面向对象to1
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- STL库中的正态分布函数
在设计抽奖一类程序中,有时会需要一种概率“有较大可能获得一个普通结果,有较小可能获得一个糟糕或极好的结果”,这就可以用正态分布函数来获得这样一个结果. STL中已经提供了一系列随机分布的函数,包括正态 ...
- 【Learning Python】【第三章】表、元组、字典和集合
表 表提供了类似数组的数据结构,它是可变的,可以增删改查 增: insert(下标,值),如果下标 > 表的长度,则插入到末尾:若 < 表头的下标,则插入到第一个 append / += ...
- Node黑客开发的10个好习惯(2016)
在2015年底之际,javascript开发者已经掌握了大量的工具.最后一次我们调查的时候,现代化的JS蓝图才刚刚出现.今天,我们很容易在JS的庞大生态系统中迷失,而成功的团队大部分时间都遵守着JS开 ...
- SqlServer性能优化 自定义动化性能收集(四)
配置数据收集器: 1.创建登录名并映射角色 2.配置管理数据仓库 3.创建收集组.收集项----MSDB数据存储 sp_syscollector_create... 4.自动配置相关job 具体步 ...
- JavaScript笔记及总结
前言: 网页中HTML为内容,CSS做展现(修饰内容),Js为行为(交互). Js属于基于对象型的脚本语言,在学习时当作编程语言(如java,c#)学习更好理解. javascript是实现网页动态效 ...
- Json序列化
参考文章 C# 解析json的方法 http://www.cnblogs.com/txw1958/archive/2012/08/01/csharp-json.html
- linux 安装一些命令
一.安装wget命令: debian 或者 ubuntu : sudo apt-get install wget centos : sudo yum -y install wget 二.安装rz.sz ...
- [GodLove]Wine93 Tarining Round #6
比赛链接: http://vjudge.net/contest/view.action?cid=47642#overview 题目来源: 2012 ACM/ICPC Asia Regional Jin ...