iowaite升高分析流程:

1、使用top 查看系统性能指标,发现iowait%数值异常,查看状态为D的进程
2、使用dstat观察 CPU 和 I/O 的使用情况,每当 iowait 升高(wai)时,磁盘的读请求(read)都会很大
3、通过pidstat -d -p pid 观察当前进程的KB_rb、kb_wr指标情况,如果对应进程这两个指标为0,可以换成当前命令:pidstat -d 1 10 观测当前系统所有进程,找到进行磁盘读写的进程ID,执行第三步操作。
4、通过strace -p PID **命令查看对应进程的父进程,如果对应进程不存在,可以使用perf record -g命令录制当前系统监测数据
5、执行
perf report **进行数据分析,找到出去内核进程外的其他进程,查看其系统调用问题。

僵尸进程分析流程:

1、使用top 查看系统性能指标,查看状态为Z的进程,获取进程的PID
2、执行命令pstree -aps PID获取该进程的父进程,找到对应应用程序。
3、查看 app 应用程序的代码,看看子进程结束的处理是否正确,比如有没有调用 wait() 或 waitpid() ,亦或是,有没有注册 SIGCHLD 信号的处理函数。

发表评论

电子邮件地址不会被公开。