我有一个运行3个WordPress实例的服务器,MySql,Apache和64m初始和最大堆上的play framework 2.0。 如果我增加运行的JVM的最大堆,甚至16米,我看到128米的交换空间稳定地填满,直到JVM死亡。
我注意到,只有当我在Java虚拟机网站上插入JVM才会死亡。 我认为这是因为JVM在收集时没有要求内存。
我注意到,当我重新启动Apache时,我回收了大约一半的交换和内存。 那么有什么办法可以configurationApache以消耗更less的内存? 还有什么可能导致交换空间得到如此巨大的冲击只有16m添加到JVM的最大堆大小?
服务器运行: Ubuntu 12.04
内存: 408米
交换: 128米
Apache mods:
- alias.conf
- alias.load
- auth_basic.load
- authn_file.load
- authz_default.load
- authz_groupfile.load
- authz_host.load
- authz_user.load
- autoindex.conf
- autoindex.load
- cgi.load
- deflate.conf
- deflate.load
- dir.conf
- dir.load
- env.load
- mime.conf
- mime.load
- negotiation.conf
- negotiation.load
- php5.conf
- php5.load
- proxy_ajp.load
- proxy_balancer.conf
- proxy_balancer.load
- proxy.conf
- proxy_connect.load
- proxy_ftp.conf
- proxy_ftp.load
- proxy_http.load
- proxy.load
- reqtimeout.conf
- reqtimeout.load
- rewrite.load
- setenvif.conf
- setenvif.load
- status.conf
- status.load
运行3个WordPress站点,MySQL和一个Java应用程序所需的128M绝对是最低的范围。
为了降低你的Web服务器内存占用,我build议你从Apache切换到nginx + php5-fpm 。 两者都可以通过Ubuntu存储库获得。