这个过程会导致服务器崩溃吗?

这个过程会导致服务器崩溃吗?

我试图了解为什么服务器(AWS Ubuntu)有时会变得无响应并最终必须重新启动。

在查看top日志时,我发现一个我认为可能导致此问题的进程。当它启动时,负载在几分钟内从大约 3 增加到 300,然后崩溃了。

但是,查看日志时,我不确定如何解释结果。看起来内存使用量从 5GB 降到了 5KB,所以我想这很好?这种过程有可能导致服务器崩溃吗?还是我看错了?

这是top该过程随时间的输出:

 PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND

 1706 www-data  35  15 10.875g 5.181g    100 D   6.2 70.9   8:35.43 php ......

 1706 www-data  35  15 10.875g 3.076g    808 R   0.0 42.1   8:37.37 php ......

 1706 www-data  35  15 10.875g 236608   1132 D   0.0  3.1   8:37.45 php ......

 1706 www-data  35  15 10.875g  26408    736 D   0.0  0.3   8:37.54 php ......

 1706 www-data  35  15 10.875g  11268    628 D   0.0  0.1   8:37.63 php ......

 1706 www-data  35  15 10.875g  10308    516 D   0.0  0.1   8:37.72 php ......

 1706 www-data  35  15 10.875g   8116    360 D   0.0  0.1   8:37.78 php ......

 1706 www-data  35  15 10.875g   6728    688 D   0.0  0.1   8:37.84 php ......

 1706 www-data  35  15 10.875g   5840    484 D   0.0  0.1   8:37.90 php ......

 1706 www-data  35  15 10.875g   5852    644 D   0.0  0.1   8:37.97 php ......

编辑:我把服务器崩溃前的最后一份可用日志放在这里:https://pastebin.com/ZM1XiUid这里面是否存在可能导致坠机的因素?

答案1

您可以从输出中注意到以下几点top

  1. 显示的某个进程正在使用超过 5GB 的内存5.181g
  2. 有多个进程处于不可中断的睡眠模式D。此模式意味着进程正在等待某些操作(最有可能是 I/O,如磁盘操作)。

如果您获得过多此类进程(D状态),您的服务器负载将变得过高。为了解决此问题,您需要知道这些进程正在做什么或等待什么。可能是太多请求影响了较慢的磁盘。

这种情况可能不会导致整个服务器崩溃,但至少会使服务器不稳定或无响应。

这个帖子解释什么是不可中断的睡眠状态。

相关内容