我有一台 Centos VPS,似乎有很多内存问题。首先是我的硬件:
Processor Information
Processor #1 Vendor: GenuineIntel
Processor #1 Name: Intel(R) Xeon(R) CPU E5405 @ 2.00GHz
Processor #1 speed: 198.721 MHz
Processor #1 cache size: 6144 KB
Processor #2 Vendor: GenuineIntel
Processor #2 Name: Intel(R) Xeon(R) CPU E5405 @ 2.00GHz
Processor #2 speed: 198.721 MHz
Processor #2 cache size: 6144 KB
Processor #3 Vendor: GenuineIntel
Processor #3 Name: Intel(R) Xeon(R) CPU E5405 @ 2.00GHz
Processor #3 speed: 198.721 MHz
Processor #3 cache size: 6144 KB
Processor #4 Vendor: GenuineIntel
Processor #4 Name: Intel(R) Xeon(R) CPU E5405 @ 2.00GHz
Processor #4 speed: 198.721 MHz
Processor #4 cache size: 6144 KB
Memory Information
System Information
Linux server.server777.ro 2.6.18-028stab060.2 #1 SMP Tue Jan 13 10:24:09 MSK 2009 x86_64 x86_64 x86_64 GNU/Linux
Physical Disks
Current Memory Usage
total used free shared buffers cached
Mem: 525312 426224 99088 0 0 0
-/+ buffers/cache: 426224 99088
Swap: 0 0 0
Total: 525312 426224 99088
Current Disk Usage
Filesystem Size Used Avail Use% Mounted on
/dev/vzfs 30G 13G 18G 44% /
none 7.9G 4.0K 7.9G 1% /dev
内存似乎是由 apache 作为用户 nobody 在页面请求中生成的。问题是代码没有任何变化。我无法想象是什么导致了这种情况。
所托管的网站并不是很受欢迎,因此流入的流量并不多。
我该如何着手诊断这个问题?谢谢您的任何建议。
答案1
当您运行 top 并按内存排序时,httpd 是否位于顶部(多次)?
如果您的网站不太受欢迎,您应该能够调整 httpd.conf 中的设置来限制 StartServers、MaxSpareServers、MaxClients、ServerLimit 等的数量。
另外,你可能还需要考虑 nginx(http://nginx.net/)充当 apache 的代理,这几乎肯定会降低您的内存占用。