Apache内存使用控制失控

我有ubuntu 10.04与512MB内存运行apache2。 这一切似乎没问题,直到我开始向服务器发出请求。 当我观看我的内存使用情况时,每次浏览到另一个页面时都会跳跃大约5-10%。 我假设这是新的Apache进程运行服务器的内容。 我不会为此烦恼,但是当我停止请求页面时,它不会回落。

我使用Django和wsgi,如果这有什么区别。

编辑:

来自:/etc/apache2/apache2.conf

Timeout 300 KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 3 <IfModule mpm_prefork_module> StartServers 1 MinSpareServers 1 MaxSpareServers 5 MaxClients 15 MaxRequestsPerChild 0 </IfModule> <IfModule mpm_worker_module> StartServers 2 MinSpareThreads 25 MaxSpareThreads 75 ThreadLimit 64 ThreadsPerChild 25 MaxClients 150 MaxRequestsPerChild 0 </IfModule> <IfModule mpm_event_module> StartServers 2 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadLimit 64 ThreadsPerChild 25 MaxRequestsPerChild 0 </IfModule> 

我已经编辑mpm_prefork_module更小,但没有解决它!

你可以在这里发表什么是你的Apache的设置

MaxRequestsPerChild

MaxClients

也有一些顶级的输出,或者你跳跃时看到的任何东西,都可以帮助我们理解和解释内存的去向。

它不应该回落。 如果你的内存不足 ,这只是一个问题。 否则大多数软件将尽可能多地使用内存并继续使用它。

这听起来像预期的那样工作。 一些apache儿童启动,消耗一些内存,并继续在最大和最小备用服务器的范围内运行。

您可以浏览文档,并进行更多的调整,如果你喜欢。 说减lessMaxSpareServers。 那么你将不会有太多的Apache进程挂起。