我有一个运行在Apache上的mod_wsgi的Ubuntu EC2实例(t1.micro,内存为600mb),可以为Django应用程序提供服务。 这都是负载均衡器的后面。
我一直遇到的问题是,我似乎只能得到几天的正常运行时间,在我的网站停止前,我开始获得503状态。 我的logging是大约4周,没有停机。 重新启动apache没有帮助,我通常必须完全停止并重新启动EC2实例。
我已经尝试使用Dowser来诊断内存泄漏,但没有什么突出的。 我试过调整mpm_prefork设置。 我没有使用任何C扩展模块,任何外部API调用都有超时设置,我只有两个cron作业每天运行一次。 我的访问日志没有显示任何不寻常的东西,可能会显示DDOSing。
我完全不知道是什么导致服务器不断下降。
以下是停机时间段中apachectl状态的输出:
这里是htop的输出:
这些是我的prefork设置:
<IfModule mpm_prefork_module> StartServers 5 MinSpareServers 5 MaxSpareServers 10 MaxRequestWorkers 40 MaxConnectionsPerChild 0 </IfModule>
我应该升级到更大的EC2实例吗? 或者升级mod_wsgi(因为我在旧版本)? 我试过从Djangoangular度的一切,所以我开始认为我只是mod_wsgiconfiguration不正确…