我试图了解为什么服务器(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有没有可能导致崩溃的东西?
您可以从top输出中注意到几件事情:
5.181g 。 D有几个进程。 这种模式意味着进程正在等待某些事情(很可能是I / O像磁盘操作)。 如果您获得的这些进程太多( D状态),您的服务器负载将变得太高。 为了解决这个问题,你需要知道这些进程在做什么或等待什么。 这可能是太多的请求打慢速磁盘。
这样的情况可能不会导致整个服务器停机,但至less会使服务器不稳定或不响应。
这篇文章解释了什么是不可中断的睡眠状态。