linux性能调优工具

一、查看系统负载uptime

uptime
高亮显示变化区域
watch -d uptim缓存

二、cpu性能分析工具mpstat


字段的含义工具

  • %user 在internal时间段里,用户态的CPU时间(%),不包含nice值为负进程 (usr/total)*100
  • %nice 在internal时间段里,nice值为负进程的CPU时间(%) (nice/total)*100
  • %sys 在internal时间段里,内核时间(%) (system/total)*100
  • %iowait 在internal时间段里,硬盘IO等待时间(%) (iowait/total)*100
  • %irq 在internal时间段里,硬中断时间(%) (irq/total)*100
  • %soft 在internal时间段里,软中断时间(%) (softirq/total)*100
  • %idle 在internal时间段里,CPU除去等待磁盘IO操做外的由于任何缘由而空闲的时间闲置时间(%) (idle/total)*100
    mpstat -P ALL 5 #-P ALL表示监控全部cpu,后面数字5表示间隔5秒后输出一组数据

三、进程性能分析工具pidstat

经常使用的参数:性能

  • -u:默认的参数,显示各个进程的cpu使用统计
  • -r:显示各个进程的内存使用统计
  • -d:显示各个进程的IO使用状况
  • -p:指定进程号
  • -w:显示每一个进程的上下文切换状况
  • -t:显示选择任务的线程的统计信息外的额外信息
  • -T { TASK | CHILD | ALL }
    这个选项指定了pidstat监控的。TASK表示报告独立的task,CHILD关键字表示报告进程下全部线程统计信息。ALL表示报告独立的task和task下面的全部线程。
    注意:task和子线程的全局的统计信息和pidstat选项无关。这些统计信息不会对应到当前的统计间隔,这些统计信息只有在子线程kill或者完成的时候才会被收集。
  • -V:版本号
  • -h:在一行上显示了全部活动,这样其余程序能够容易解析。
  • -I:在SMP环境,表示任务的CPU使用率/内核数量
  • -l:显示命令名和全部参数
    pidstat -u 5 1 #间隔5秒后输出一组数据
    pidstat -w 5 #显示每一个进程上下文切换状况

字段说明:
cswch/s:表示每秒自愿上下文切换的次数
nvcswch/s:表示非自愿上下文切换的次数线程

四、对系统的总体状况进行统计工具vmstat

参数说明:
Procs(进程):
r:运行队列中进程数量
b:等待IO的进程数量
Memory(内存):
swpd: 使用虚拟内存大小
free: 可用内存大小
buff: 用做缓冲的内存大小
cache: 用做缓存的内存大小
Swap:
si: 每秒从交换区写到内存的大小
so: 每秒写入交换区的内存大小
IO:(如今的Linux版本块的大小为1024bytes)
bi: 每秒读取的块数
bo: 每秒写入的块数
系统:
in: 每秒中断数,包括时钟中断。【interrupt】
cs: 每秒上下文切换数。 【count/second】
CPU(以百分比表示):
us: 用户进程执行时间(user time)
sy: 系统进程执行时间(system time)
id: 空闲时间(包括IO等待时间),中央处理器的空闲时间 。以百分比表示。
wa: 等待IO时间
备注:
若是r常常大于4,id常常少于40,表示cpu的负荷很重。
若是bi,bo长期不等于0,表示内存不足。
若是disk常常不等于0,且在b中的队列大于3,表示io性能很差。code

相关文章
相关标签/搜索