• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

常用监控命令-pidstat

开发技术 开发技术 3天前 6次浏览
pidstat:可以查看到进程的上下文切换
安装:yum install sysstat

常用监控命令-pidstat

cswch/s:每秒主动任务上下文切换数量-自愿上下文切换
nvcswch/s:每秒被动任务上下文切换数量-非自愿上下文切换
pidstat常用参数

常用监控命令-pidstat

 

为什么要监控上下文切换次数
为什么我们做监控的时候,需要监控CPU的上下文切换次数呢?说到这里我还要解释两个概念,自愿上下文切换和非自愿上下文切换
自愿上下文切换:是指进程无法获取所需资源,导致的上下文切换。比如说, I/O、内存等系统资源不足时,就会发生自愿上下文切换。
非自愿上下文切换:则是指进程由于时间片已到等原因,被系统强制调度,进而发生的上下文切换。比如说,大量进程都在争抢 CPU 时,就容易发生非自愿上下文切换。
上次文切换次数主要监控哪些方面:自愿上下文切换次数,非自愿上下文切换次数,中断上下文切换。
 
每秒上下文切换多少次算正常?
这个数值主要取决于系统CPU的性能,如果上下文切换比较稳定,那在1万以下都算是正常,如果超过1万或者切换次数出现很大的增长,就很可能出现了性能问题。
cswch ,自愿上下文切换的次数增多了,说明系统正在等待资源,有可能发生了I/O等其它问题;
nvcswch ,非自愿上下文切换的次数增多了,说明进程都在强制调度,也就是在争抢CPU,说明CPU性能成了瓶颈;
in,中断次数增多了,说明CPU被中断,通过分析/proc/interrupt文件来确认中断类型。
 
pidstat 结合 vmstat使用
常用监控命令-pidstat
system 显示采集间隔内发生的中断数
in 列表示在某一时间间隔中观测到的每秒设备中断数。
cs列表示每秒产生的上下文切换次数,如当 cs 比磁盘 I/O 和网络信息包速率高得多,都应进行进一步调查

程序员灯塔
转载请注明原文链接:常用监控命令-pidstat
喜欢 (0)