Apache-2.2

交換空間最大化 - JVM 死亡

  • October 23, 2012

我有一台伺服器在 64m 初始和最大堆上執行 3 個 WordPress 實例、MySql、Apache 和播放框架 2.0。如果我將執行的 JVM 的最大堆增加 16m,我會看到 128m 的交換空間穩步填滿,直到 JVM 死掉。

我注意到只有當我在 wordpress 站點上阻塞時,JVM 才會死掉。我認為這是因為 JVM 當時沒有請求記憶體,所以被收集了。

我注意到當我重新啟動 Apache 時,我回收了大約一半的交換和 RAM。那麼有什麼方法可以配置 apache 以減少記憶體消耗嗎?還有什麼可能導致交換空間在 JVM 的最大堆大小上僅增加 16m 時受到如此嚴重的衝擊?

伺服器執行: Ubuntu 12.04

記憶體: 408m

交換: 128m

阿帕奇模組:

  • 別名.conf
  • 別名.load
  • auth_basic.load
  • authn_file.load
  • authz_default.load
  • authz_groupfile.load
  • authz_host.load
  • authz_user.load
  • 自動索引配置文件
  • 自動索引載入
  • cgi.load
  • 放氣文件
  • 放氣.load
  • 目錄配置文件
  • 目錄載入
  • 環境載入
  • 啞劇配置文件
  • 啞劇載入
  • 協商文件
  • 協商載入
  • php5.conf
  • php5.load
  • proxy_ajp.load
  • proxy_balancer.conf
  • proxy_balancer.load
  • 代理.conf
  • proxy_connect.load
  • proxy_ftp.conf
  • proxy_ftp.load
  • proxy_http.load
  • 代理載入
  • 請求超時.conf
  • 請求超時.load
  • 重寫.load
  • 設置環境文件
  • setenvif.load
  • 狀態.conf
  • 狀態.load

128m 絕對是執行 3 個 WordPress 站點、MySQL 和 Java 應用程序所需的最低範圍。

為了降低您的 Web 伺服器記憶體佔用,我建議您從 Apache 切換到nginx + php5-fpm。兩者都可以通過 Ubuntu 儲存庫獲得。

引用自:https://serverfault.com/questions/441202