当您的 Web 服务器开始将内存分页到磁盘并且速度变得非常慢时,最好的恢复方法是什么?

当您的 Web 服务器开始将内存分页到磁盘并且速度变得非常慢时,最好的恢复方法是什么?

我已经关闭并重新启动服务器,但是除了这样做之外,您还可以做些什么来快速从高分页情况中恢复?

答案1

预防胜于治疗,因此您应该首先尝试避免这种情况。如果问题是由内存使用量不受控制的增长(例如内存泄漏)引起的,您可以设置监控一旦超过一定的内存限制,重新启动受监控的进程。如果流量激增,您可以考虑限制请求数量。以合理的性能处理较少的请求总是比试图为所有人提供服务但速度却非常慢要好。

答案2

不幸的是,这儿没有快的如果系统页面调换很多,这种方法就很有效。如果您仍然能够访问系统,则可以尝试终止最耗内存的进程。

ps -e -o rss=,pid=,comm= | sort -n

可以让您了解内存消耗情况。第一列显示驻留集大小,第二列显示进程的 pid,第三列显示执行的命令。

请保持耐心,并尝试通过以下方式结束该过程

kill -15 <pid>

如果此方法无效,请尝试

kill -9 <pid>

相关内容