基于linux服务器的性能分析与优化(六)
2012-07-10 20:11
232 查看
uptime命令
uptime是监控系统性能最常用的一个命令,主要用来统计系统当前的运行状况。输出的信息依次为:系统现在的时间、系统从上次开机到现在运行了多少时间,系统目前多少登录用户,系统在1分钟内、5分钟内、15分钟内的平均负载。uptime 13:05:56 up 353 days, 21:08, 7 users, load average: 1.01, 0.85, 0.43load average3个值的大小一般不能大于系统CPU的个数。例如:本输出中系统有8个cpu,如果load average的3个值长期大约8时,说明CPU很繁忙,负载很高,可能会影响系统性能;如果偶尔大于8,一般不会影响系统性能。
netstat命令
netstat命令用于显示本机网络连接、运行端口、路由表等信息。usage: netstat [-veenNcCF] [<Af>] -r netstat {-V|--version|-h|--help} netstat [-vnNcaeol] [<Socket> ...] netstat { [-veenNac] -i[<Iface>] | [-cnNe] -M | -s } [delay] -r, --route display routing table -i, --interfaces=[<Iface>] display interface table -g, --groups display multicast group memberships -s, --statistics display networking statistics (like SNMP) -M, --masquerade display masqueraded connections -v, --verbose be verbose -n, --numeric don't resolve names --numeric-hosts don't resolve host names --numeric-ports don't resolve port names --numeric-users don't resolve user names -N, --symbolic resolve hardware names -e, --extend display other/more information -p, --programs display PID/Program name for sockets -c, --continuous continuous listing -l, --listening display listening server sockets -a, --all, --listening display all sockets (default: connected) -o, --timers display timers -F, --fib display Forwarding Information Base (default) -C, --cache display routing cache instead of FIB <Iface>: Name of interface to monitor/list. <Socket>={-t|--tcp} {-u|--udp} {-w|--raw} {-x|--unix} --ax25 --ipx --netrom <AF>=Use '-A <af>' or '--<af>'; default: inet-a 显示本机的所有连接和监听端口-n 以网络IP地址的形式显示当前建立的有效连接和端口-r 显示路由表信息-s 显示按协议的统计信息,默认将显示IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP、UDPv6的统计信息-v 显示当前的有效连接,与-n选项类似-t 显示所有TCP协议连接情况-u 显示所有UDP协议连接情况-c<秒数> 后面的秒数表示每隔几秒就刷新一次-i 显示自动配置接口的状态-l 仅显示连接状态为LISTEN的服务的网络状态-p 显示连接对应的PID和程序名netstat -i命令组合可以显示网络接口的详细信息
netstat -i Kernel Interface table Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth0 1500 0 16 0 0 0 0 0 0 0 BMRU eth1 1500 0 30284491725 0 0 0 37698810506 0 0 0 BMRU lo 16436 0 31192969 0 0 0 31192969 0 0 0 LRU每项输出的解释如下:Iface表示网络设备的接口名称MTU表示最大传输单元,单位为字节RX-OK/TX-OK表示已经准确无误的接收/发送了多少数据包RX-ERR/TX-ERR表示接收/发送数据包时产生了多少错误RX-DRP/TX-DRP表示接收/发送数据包时丢弃了多少数据包RX-OVR/TX-OVR表示由于误差而遗失了多少数据包Flg表示接口标记,其中L表示该接口是个回环设备;B表示设置了广播地址M表示接收所有数据包R表示接口还在活动U表示接口处于活动状态O表示在该接口上禁用arpP表示一个点到点的连接正常情况下RX-ERR/Tx-ERR、RX-DRp/TX-DRP、RX-OVR/TX-OVR的值都应该是0,如果这几个值不为0,并且很大,那么网络质量应该有问题,网络传输性能也一定会下降。在网络不通或者网络异常时,首先检查系统的路由表信息,netstat -r的输出结果与route命令的输出完全相同
netstat -r Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 10.32.25.0 * 255.255.255.0 U 0 0 0 eth1 169.254.0.0 * 255.255.0.0 U 0 0 0 eth1 192.168.0.0 10.32.25.1 255.255.0.0 UG 0 0 0 eth1 172.16.0.0 10.32.25.1 255.240.0.0 UG 0 0 0 eth1 10.0.0.0 10.32.25.1 255.0.0.0 UG 0 0 0 eth1
top命令
top提供了实时对系统处理器状态的监控,能够实时显示系统中各个进程的资源占用状况。可以按照CPU的使用、内存的使用、和执行时间对系统任务进程排序,同时可以通过交互式命令进行设定显示。类似于windows的任务管理器。top选项很多,常用的有-d 指定每两次屏幕信息刷新之间的时间间隔-i 不显示闲置或者僵死的进程-c 显示进程的整个命令路径,而不是只显示命令名称-s 使top在安全模式下运行,此时top的交互式指令被取消,-b分屏显示输出信息,结合-n选项可以将屏幕信息输出到文档-n top输出信息更新次数,完成后将退出top命令top除了以上选项还有很多交互式命令h或者?显示帮助信息k 终止一个进程,系统将提示用户输入一个需要终止进程的PIDi忽略闲置进程或者僵死进程,是一个开关命令s 改变top输出信息两次刷新间隔,系统提示输入新的实践,单位是秒,如果是小数,就换成毫秒,如果输入0,系统输出将不断被刷新,默认为5秒,如果设置时间太小,可能会引起系统不断刷新,无法看清输出内容,而且系统负载也会加大o或者O 改变top输出信息中显示项目的顺序,按小写的a-z键可以将相应的列向右移动,大写的A-Z可以将相应的列向左移动,最后按回车确定f或者F 从当前显示列表中添加或删除项目,按f之后会显示列的列表,按a-z之间的任意键即可显示或隐藏对应的列,最后按回车确定m切换显示内存信息t切换显示进程和cpu状态信息r 重新设置一个进程的优先级,系统提示用户输入需要改变的进程PID以及需要设置的进程优先级设置。输入一个正值将使优先级降低,反之则使进程有用更高的优先级,默认是0l 切换显示平均负载和启动时间信息q 退出top显示c 切换显示完整命令行和命令名称信息M根据驻留内存大小进行排序输出P根据CPU使用百分比大小进行排序输出T根据时间/累积时间进行排序输出S切换到累积模式W将当前top设置写入~/.toprc文件中下面来看一个例子top - 19:59:47 up 27 days, 4:55, 6 users, load average: 1.06, 1.04, 1.06 Tasks: 123 total, 2 running, 119 sleeping, 1 stopped, 1 zombie Cpu(s): 0.1% us, 2.5% sy, 10.2% ni, 87.2% id, 0.0% wa, 0.0% hi, 0.0% si Mem: 47811272k total, 28204544k used, 19606728k free, 41044k buffers Swap: 0k total, 0k used, 0k free, 4276844k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 23699 user 35 10 70932 17m 4992 R 99.9 0.0 1842:59 sh 63 root 15 0 0 0 0 S 0.0 0.0 54:00.46 kswapd0 18661 root 16 0 98408 7344 3136 S 0.0 0.0 43:54.33 naming-agent 12944 root 16 0 18020 2844 2016 S 0.0 0.0 4:54.12 executor 24971 root 16 0 241m 184m 3060 S 0.0 0.4 3:54.96 webfoot-agent 1298 root 16 0 5792 844 612 S 0.0 0.0 3:35.97 syslogd 62 root 15 0 0 0 0 S 0.0 0.0 1:42.33 pdflush 61 root 15 0 0 0 0 S 0.0 0.0 1:37.29 pdflushtop输出分为统计信息区和进程信息区1)统计信息区第一行为任务队列信息19:59:47 表示当前系统时间up 27days 4:55 表示系统已经启动了27天4小时55分6users表示当前登录系统的用户数load average表示系统平均负载,3个数值分布式1分钟,5分钟和15分钟前到现在的系统平均负载值第二、三行为进程和CPU信息,tasks表示进程的总数2 running 表示正在运行的进程数119sleeping 处于休眠的进程数1 stopped 停止的进程数1 zombie 僵死的进程数Cpu(s); 0.1% us用户进程占用CPU百分比2.5%sy 系统进程占用CPU百分比10.2%ni 用户进程空间内改变过优先级的进程占用CPU87.2%id 空闲CPU0.0%wa 等待输入输出的进程占用CPU百分比最后两行输出的是内存信息,Mem total系统的物理内存大小used 已经使用的物理内存大小free 目前空余的内存大小buffers 用作内核缓冲区的内存大小Swap total交换分区的内存大小used 已经使用的交换分区大小free空闲的交换分区大小cached 高速缓存的大小2)进程信息区显示了每个进程的运行状态,PID进程的idUSER进程所有者的用户名PR进程优先级NI:nice值,负值表示高优先级,正值表示低优先级VIRT进程使用的虚拟内存总量,单位为KB,VIRT=SWAP+RESRES 进程使用的未被交换出的物理内存大小,单位为KB. RES=CODE+DATASHR 共享内存大小,单位为KBS进程状态,D表示不可中断的睡眠状态,R表示运行状态,S表示睡眠状态,T表示跟踪/停止,Z表示僵尸进程%CPU 上次更新到现在的CPU时间占用百分比%MEM进程占用的物理内存百分比TIME+ 进程使用的CPU时间总计,单位为1/100秒COMMAND 正在运行进程的命令名或命令路径
相关文章推荐
- 基于Linux服务器的性能分析与优化
- 基于Linux服务器的性能分析与优化(2)
- 基于Linux服务器的性能分析与优化(1)
- 基于Linux服务器的性能分析与优化(2)
- 基于linux服务器的性能分析与优化(五)
- 第10章 基于linux服务器的性能分析与优化 (笔记)
- 基于linux服务器的性能分析与优化(二)
- 高性能Linux服务器 第10章 基于Linux服务器的性能分析与优化
- 基于linux服务器的性能分析与优化
- 基于linux服务器的性能分析与优化(一)
- 基于Linux服务器的性能分析与优化
- 基于linux服务器的性能分析与优化(三)
- 基于Linux服务器的性能分析与优化2
- 基于Linux服务器的性能分析与优化
- 基于linux服务器的性能分析与优化(四)
- 基于Linux服务器的性能分析与优化(1)
- 记一次linux服务器性能优化【分析篇】
- 基于Web应用的性能分析及优化案例
- 基于Web应用的性能分析及优化案例
- (1)基于Linux服务器的性能分析与优化