我的 VPS 没有响应,但重启后一切正常。为什么?

我的 VPS 没有响应,但重启后一切正常。为什么?

服务器突然变得非常繁忙并且没有响应任何内容:ssh 或 web 请求。

它已经自动发生了好几次了,所以显然我的系统出了问题。

重启后一切恢复正常,网站运行速度快,响应迅速。但大约 24 小时后,它突然再次陷入同样的​​麻烦 - 非常繁忙,没有响应任何内容,花了几十分钟才重新启动。

我不知道是什么原因导致的。配置错误?我的 PHP 代码?但我的所有网站在之前的主机上都运行正常。

我的发行版是 Debian 5.0。我安装了以下内容:

  1. 阿帕奇,mysql,php
  2. rsnapshot(一些 cron 作业)
  3. 后缀
  4. vsftpd(虽然已自动停止)
  5. chkroot工具
  6. 失败2ban

有人知道吗?可能是什么问题?我需要查看哪些日志才能找出哪个 php 脚本可能导致了问题?

答案1

最有可能的是内存泄漏。这有时会导致您所描述的那种问题。如果您有交换内存,大量交换可能会严重减慢速度,以至于几乎无法使用。否则,OOM 错误会杀死随机应用程序并导致系统故障。

最好的办法是检查日志,看看是否有任何内核 OOM 错误。否则,您可能需要考虑监控内存使用情况,看看它是否会随着时间的推移而变得太大。一旦您确认内存不足,您就可以继续跟踪导致问题的程序。

更新:

避免交换的唯一方法是减少内存占用。一种方法是更改​​应用程序和设置。您可能需要考虑以下几点:

  1. 放弃 Apache,转而使用 lighttpd/nginx 等轻量级 Web 服务器。减少php它在处理脚本时生成的实例数量。
  2. 使用示例/usr/share/doc/mysql-server-5.0/example/my-small.cnf配置文件配置 MySQL。禁用网络、innodb、bdb 以减少占用空间。
  3. 配置 PHP 以将内存从默认的 128Mb 限制为您所需的内存。
  4. Postfix 会生成多个进程来处理内存,这会消耗大量资源。考虑使用 qmail 或外包您的电子邮件服务器。

干杯。

相关内容