加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

Linux:如何检测进程是否过度颠簸?

发布时间:2020-12-14 01:14:33 所属栏目:Linux 来源:网络整理
导读:有没有办法以编程方式检测? 另外,检测哪些进程正在颠簸的linux命令是什么? 解决方法 我假设这里的“颠簸”是指所有进程的活动内存集太大而无法容纳到内存中的情况.在这种情况下,每个上下文切换都会导致读取和写入磁盘,最终服务器可能会崩溃,以至于硬件重启
有没有办法以编程方式检测?

另外,检测哪些进程正在颠簸的linux命令是什么?

解决方法

我假设这里的“颠簸”是指所有进程的活动内存集太大而无法容纳到内存中的情况.在这种情况下,每个上下文切换都会导致读取和写入磁盘,最终服务器可能会崩溃,以至于硬件重启是重新获得对盒子控制权的唯一选择.

在/ proc / vmstat中有全局计数器swin和swout – 如果它们在一些短时间间隔内增加,则该框可能正在经历颠簸问题.

在过程级别,它是非平凡的AFAIK. / proc / $pid / status包含一些有用的东西,但不包括swin和swout.从2.6.34开始,有一个VmSwap条目,使用的交换总量,以及/ proc / $pid / state中的变量#12是主要页面错误的数量. / proc / $pid / oom_score也值得研究.如果VmSwap增加和/或主要页面错误的数量增加和/或oom_score非常高,则该过程可能导致颠簸.

我写了一个脚本thrash-protect – 它可以在https://github.com/tobixen/thrash-protect获得 – 它试图找出导致颠簸和临时暂停进程的进程.它对我来说非常好,并最终从一些服务器重新启动中解救了我.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读