|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们!top下令常常用来监控linux的体系情况,好比cpu、内存的利用,步伐员基础都晓得这个下令,但对照奇异的是能用好它的人却很少,比方top监控视图中内存数值的寄义就有很多的歪曲。
本文经由过程一个运转中的WEB办事器的top监控截图,报告top视图中的各类数据的寄义,还包含视图中各历程(义务)的字段的排序。
top进进视图
top视图01
【top视图01】是刚进进top的基础视图,我们来分离这个视图解说各个数据的寄义。
第一行:
13:42:59以后体系工夫
6days,9:29体系已运转了6天6小时29分钟(在这时代没有重启过)
3users以后有3个用户登录体系
loadaverage:3.06,3.01,1.79loadaverage前面的三个数分离是1分钟、5分钟、15分钟的负载情形。
loadaverage数据是每隔5秒钟反省一次活泼的历程数,然后按特定算法盘算出的数值。假如这个数除以逻辑CPU的数目,了局高于5的时分就标明体系在超负荷运转了。
第二行:
Tasks义务(历程),体系如今共有131个历程,个中处于运转中的有3个,127个在休眠(sleep),stoped形态的有0个,zombie形态(僵尸)的有1个。
第三行:cpu形态
10.6%us用户空间占用CPU的百分比。
2.2%sy内核空间占用CPU的百分比。
0.0%ni改动过优先级的历程占用CPU的百分比
84.5%id余暇CPU百分比
2.5%waIO守候占用CPU的百分比
0.1%hi硬中止(HardwareIRQ)占用CPU的百分比
0.0%si软中止(SoftwareInterrupts)占用CPU的百分比
在这里CPU的利用比率和windows观点分歧,假如你不睬解用户空间和内核空间,必要充充电了。
第四行:内存形态
8300124ktotal物理内存总量(8GB)
5979476kused利用中的内存总量(5.7GB)
2320648kfree余暇内存总量(2.2G)
455544kbuffers缓存的内存量(434M)
第五行:swap互换分区
8193108ktotal互换区总量(8GB)
41568kused利用的互换区总量(40.6M)
8151540kfree余暇互换区总量(8GB)
4217456kcached缓冲的互换区总量(4GB)
这里要申明的是不克不及用windows的内存观点了解这些数据,假如按windows的体例此台办事器危矣:8G的内存总量只剩下530M的可用内存。Linux的内存办理有其特别性,庞大点必要一本书来讲明,这里只是复杂说点和我们传统观点(windows)的分歧。
第四行中利用中的内存总量(used)指的是如今体系内核把持的内存数,余暇内存总量(free)是内核还未归入其管控局限的数目。归入内核办理的内存不见得都在利用中,还包含已往利用过的如今能够被反复使用的内存,内核其实不把这些可被从头利用的内存交还到free中往,因而在linux上free内存会愈来愈少,但不必为此忧虑。
假如出于习气往盘算可用内存数,这里有个近似的盘算公式:第四行的free+第四行的buffers+第五行的cached,按这个公式此台办事器的可用内存:2320648+455544+4217456=6.6GB。
关于内存监控,在top里我们要时候监控第五行swap互换分区的used,假如这个数值在不休的变更,申明内核在不休举行内存和swap的数据互换,这是真实的内存不敷用了。
第六行是空行
第七行以下:各历程(义务)的形态监控
PID历程id
USER历程一切者
PR历程优先级
NInice值。负值暗示高优先级,正值暗示低优先级
VIRT历程利用的假造内存总量,单元kb。VIRT=SWAP+RES
RES历程利用的、未被换出的物理内存巨细,单元kb。RES=CODE+DATA
SHR同享内存巨细,单元kb
S历程形态。D=不成中止的就寝形态R=运转S=就寝T=跟踪/中断Z=僵尸历程
%CPU前次更新到如今的CPU工夫占用百分比
%MEM历程利用的物理内存百分比
TIME+历程利用的CPU工夫总计,单元1/100秒
COMMAND历程称号(下令名/下令行)
多U多核CPU监控
在top基础视图中,按键盘数字1,可监控每一个逻辑CPU的情况:
top视图02
察看上图,办事器有4个逻辑CPU,实践上是1个物理CPU。
历程字段排序
默许进进top时,各历程是依照CPU的占用量来排序的,在【top视图01】中历程ID为3527的mysqld历程排在第一(cpu占用2%),历程ID为26955的java历程排在第二(cpu占用1%)。可经由过程键盘指令来改动排序字段,好比想监控哪一个历程占用MEM最多,我一样平常的利用***以下:
1.敲击键盘b(翻开/封闭加亮效果),top的视图变更以下:
top视图03
我们发明历程id为20517的top历程被加亮了,通常是运转形态(runing)的历程才被加亮,能够经由过程敲击y键封闭或翻开运转态历程的加亮效果。
2.敲击键盘x(翻开/封闭排序列的加亮效果),top的视图变更以下:
top视图04
能够看到,top默许的排序列是%CPU。
3.经由过程shift+>或shift+<能够向右或左改动排序列,下图是按一次shift+>的最终效果:
top视图05
视图如今已依照%MEM来排序了。
改动历程显现字段
1.敲击f键,top进进另外一个视图,在这里能够编排基础视图中的显现字段:
top视图06
这里列出了一切可在top基础视图中显现的历程字段,有*而且标注为年夜写字母的字段是可显现的,没有*而且是小写字母的字段是不显现的。假如要在基础视图中显现CODE和DATA两个字段,能够经由过程敲击r和s键:
top视图07
2.回车前往基础视图,能够看到多了CODE和DATA两个字段:
top视图08
top下令的增补
top下令是Linux长进行体系监控的首选下令,但偶然候却达不到我们的请求,top下令的监控最小单元是历程,以是看不到步伐的线程数和客户毗连数,一般能够ps和netstate两个下令来增补top的不敷。
监控java线程数:
ps-eLf|grepjava|wc-l
监控收集客户毗连数:
netstat-n|greptcp|grep侦听端口|wc-l
下面两个下令,可修改grep的参数,来到达更仔细的监控请求。
在Linux体系统统都是文件的头脑贯彻引导下,一切历程的运转形态都能够用文件来猎取。体系根目次/proc中,每个数字子目次的名字都是运转中的历程的PID,进进任一个历程目次,可经由过程个中文件或目次来察看历程的各项运转目标,比方task目次就是用来形貌历程中线程的,因而也能够经由过程上面的***猎取某历程中运转中的线程数目(PID指的是历程ID):
ls/proc/PID/task|wc-l
在linux中另有一个下令pmap,来输入历程内存的情况,能够用来剖析线程仓库:
pmapPID
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们! |
|