Linux 服务器性能参数指标.docx
《Linux 服务器性能参数指标.docx》由会员分享,可在线阅读,更多相关《Linux 服务器性能参数指标.docx(13页珍藏版)》请在三一办公上搜索。
1、这里只是一些简单的工具查看系统的相关参数,当然很多工具也是通过分析加工/proc.sys下的数据来工作的,而那些吏加细致、专业的性能监测和调优,可能还需要更加专业的工具(perf、systemtap等)和技术才能完成俄。毕竟来说,系统性能监控本身就是个大学问.广VOContrOHorJIIkitedaceTDIIDWkISwapswapon/INetWodCCOntrOMernicstatranspoctsnetstatIortIPortipthtool/SninpgetTlldptool一、CPlJ和内存类1.1topT-toptop-1M:13:57up1daye21:B1t6users,
2、loadaverage:3.13e1.07.Q.1Taslcs:25total,5running.2Bsleeping,Stopped9zombie%Cpu(5):1.7usv.7sy.0.ni.0.2id.0.va9.hi9.si.0.0stKiB:12三77272total.7SMS2fr.172f2SusedvS5971MbuFf/cacheKiBSwap:n2Vntotal.712OT2free,used.999MauailMenPIDUSERPRHUlRlRESSHRSCRJHEH“ME.CQHHAND17Mtazj?7337”3“5180R11.00.8M.33cc1plvs18M
3、tazj722697M510R9.i.7M.?9CelPlVS10Ktzj2722S512B9.M.27cclplws1Mtaj21f7S3S3979R5.A.SM.17cc1plV51230tazj20167M21812It.7M.1top13root2017root201051root22861root229989tOZj21root262root200000S0.30Q00S0.3.e0000S0.3.6000S.3.1338220892S0.3.00188980962388S0.00.0oes8.ooW15.01rcu-sched.89rcuos/3.51kworker2r00.9kw
4、orker8:000.6SSShd12.68systPRd00.04Hthrpadd3root2000S0.00.0000.20ksoftirqd第一行后面的三个值是系统在之前1、5.15的平均负载,也可以看出系统负载是上升、平稳、下降的趋势,当这个值超过CPU可执行单元的数目,则表示CPU的性能已经饱和成为瓶颈了.第二行统计了系统的任务状态信息。running很自然不必多说,包括正在CPU上运行的和将要被调度运行的;SIeePing通常是等待事件(比如IO麋作)完成的任务,细分可以包括interruptible和uninterruptible的类型;stopped是一些被皙停的任务,通常发送
5、SIGSTOP或者对一个前台任务掇作Ctrl-Z可以将其暂停;zombie儡尸任务,虽然迸程终止资源会被自动回收,但是含有退出任务的taskdescriptor需要父进程访问后才能释放,这种进程显示为defunct状态,无论是因为父进程提前退出还是未wait调用,出现这种进程都应该格外注意程序是否设计有误.第三行CPU占用率根据类型有以下几种情况:(US)user:CPU在低nice值(高优先级)用户态所占用的时间(niceO)。默认新启动的进程nice=。,是不会计入这里的,除非手动通过renice或者SetpriorityO的方式修改程序的nice值(id)idle:CPU在空闲状态(执行
6、kernelidlehandler)所占用的时间(Wa)iowait:等待IO完成做占用的时间(hi)irq:系统处理硬件中断所消耗的时间(si)SOftirq:系统处理软中断所消耗的时间,记住软中断分为SOftirqs.tasklets(其实是前者的特例)、workqueues,不知道这里是统计的是哪些的时间,毕竟workqueues的执行已经不是中断上下文了(St)SteaI:在虚拟机情况下才有意义,因为虚拟机下CPU也是共享物理CPU的,所以这段时间表明虚拟机等待hypervisor调度CPU的时间,也意味着这段时间hypervisor将CPU调度给别的CPU执行,这个时段的CPU资源被
7、“stolen了.这个值在我KVM的VPS机器上是不为0的,但也只有0.1这个数量级,是不是可以用来判断VPS超售的情况?CPU占用率高很多情况下意味着一些东西,这也给服务器CPU使用率过高情况下指明了相应地排直思路:当user占用率过高的时候,通常是某些个别的进程占用了大量的CPU,这时候很容易通过top找到该程序;此时如果怀疑程序异常,可以通过perf等思路找出热点调用函数来进一步排直;当system占用率过商的时候,如果IO操作(包括终端IO)比较多,可能会造成这部分的CPU占用率高,比如在fileserver,databaseserver等类型的服务器上,否则(比如20%)很可能有些部
8、分的内核、驱动模块有问题;当nice占用率过高的时候,通常是有意行为,当进程的发起者知道某些进程占用较高的CPU,会设笆其nice值确保不会淹没其他进程对CPU的使用请求;当iowait占用率过高的时候,通常意味着某些程序的IO操作效率很低,或者IO对应设备的性能很低以至于读写操作需要很长的时间来完成;当irq/softirq占用率过高的时候,很可能某些外设出现问题,导致产生大员的irq请求,这时候通过检查procinterrupts文件来深究问题所在;当steal占用率过高的时候,黑心厂商虚拟机超售了吧!第四行和第五行是物理内存和虚拟内存(交换分区)的信息:total=free+used+b
9、uff/cache,现在buffers和cachedMem信息总和到一起了,但是buffers和cachedMem的关系很多地方都没说清楚.其实通过对比数据,这两个值就是procmeminfo中的Buffers和Cached字段:Buffers是针对rawdisk的块缓存,主要是以rawblock的方式缓存文件系统的元数据(比如超级块信息等),这个值一般比较小(20M左右);而Cached是针对于某些具体的文件进行读缓存,以增加文件的访问效率而使用的,可以说是用于文件系统中文件缓存使用.而availMem是一个新的参数值,用于指示在不进行交换的情况下,可以给新开启的程序多少内存空间,大致和fr
10、ee+buff/cached相当,而这也印证了上面的说法,free+buffers+cachedMem才是真正可用的物理内存.并且,使用交换分区不见得是坏手情,所以交换分区使用率不是什么严更的参数,但是频繁的SW叩in/out就不是好事情了,这种情况需要注意,通常表示物理内存紧缺的情况.最后是每个程序的资源占用列表,其中CPU的使用率是所有CPUcore占用率的总和。通常执行top的时候,本身该程序会大量的读取Zproc操作,所以基本该top程序本身也会是名列前茅的.top虽然非常强大,但是通常用于控制台实时监测系统信息,不适合长时间(几天、几个月)监测系统的负载信息,同时对于短命的进程也会遗
11、潮无法给出统计信息.1. 2vmstatvmstat是除top之外另一个常用的系统检测工具,下面截图是我用-j4编译b。St的系统负载.IB*VmutVltfe1-onitN_,i-rystMT_icrb*dRfp*or,-X”CChrMZcPuid,t0143391531M16239176371U9,6BB1673971M22176923:1”333176*0,,:1,2”Aat7341a,0tw9S,12mi20WH*12”9$Sa3111127233112n5r表示可运行进程数目,数据大致相符;而b表示的是uninterruptible睡娓的进程数目;SWPd表示使用到的虚拟内存数量,跟
12、top-Swap-used的数值是一个含义,而如手册所说,通常情况下buffers数目要比cachedMem小的多,buffers一般20M这么个数量级;io域的bi、bo表明每秒钟向磁盘接收和发送的块数目(blocks/s);SyStem域的in表明每秒钟的系统中断数(包括时钟中断),cs表明因为进程切换导致上下文切换的数目.说到这里,想到以前很多人纠结编译IinUXkernel的时候-j参数究竟是CPUCore还是CPUCOre+1?通过上面修改-j参数值编译boost和Iinuxkernel的同时开启vmstat监控,发现两种情况下contextswitch基本没有变化,目也只有显著增加
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 服务器性能参数指标 服务器 性能参数 指标
链接地址:https://www.31ppt.com/p-7182126.html