我有一个运行 12.0.4 ubuntu 的 1GB VPS 服务器。一切正常,大部分时间我的 RAM 使用量显示大约 700 MB。然而,每周左右的随机时间服务器会出现内存不足并崩溃。它恢复并启动除 Mysql 之外的所有服务。
我发现我没有交换内存,所以我创建了 256MB 的交换文件并配置了它。它工作正常,但这次在 2 周后仍然崩溃。
我不是专家,因为你已经知道了。所以,我需要一些指导,说明为什么在正常操作中我的服务器占用了如此多的内存。我的意思是我在不同的时间观察它,它总是在 700-800MB 内存和负载稳定。没有在晚上运行的 cron 之类的。我有几个wordpress blog,但它们有稳定的负载并且从未看到任何“批量”负载。
我确实有 Vesta 控制面板,而且我知道的所有报告都是正常的。但是我注意到的一件事是 Apache 总是显示 1900MB 的内存消耗,而我的系统总共有较低的内存。我已经安装了 nginx 反向网络服务器[不知道vesta为我做的这意味着什么]。其他一切都很好,只是 apache 一直在 1900MB。似乎当这种使用量增加时,它会使服务器崩溃。
那么,有没有办法减少 apache 的使用?我还应该采取什么措施来使我的服务器在当前负载下保持稳定。
编辑:
根据这里的建议是我的 MPM 配置
<IfModule mpm_prefork_module>
StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 256
MaxClients 200
MaxRequestsPerChild 4000
</IfModule>
Run Code Online (Sandbox Code Playgroud)
这是我的 apache2ctl -l
Compiled in modules:
core.c
mod_log_config.c
mod_logio.c
prefork.c
http_core.c
mod_so.c
Run Code Online (Sandbox Code Playgroud)
虽然我之前提到过,但我在服务器上运行基于 Wordpress (PHP) 的博客,还有Redmine(Ruby on Rail) …