我已经运行了一个中等的Django 1.1站点,在2GB内存的Linux服务器上运行了大约2年。我不得不升级到Django 1.3(在同一台服务器上)以运行特定的应用程序,当然还要利用新的Django功能!然而,自从以来我一直遇到可怕的记忆问题:(
我注意到每次点击都会大大增加内存使用量。这不是由于昂贵的请求,因为即使对于非常单一的视图,内存使用率也很高(例如40MB)。
我正在使用mod_wsgi并且我没有在调试模式下运行django ....
即使只有十分之一的命中,内存也会被填满,服务器开始交换并最终死掉......一个临时解决方案是强制apache重新启动并在每次内存填满时重新加载。
但我必须找到泄漏的地方。它是django还是apache?可能是默认配置(我跟着django和mod_wsgi页面上的方法)以及apache配置会产生问题吗?
关于如何配置apache + mod_wsgi选项的任何建议都非常受欢迎!
干杯, N.L。
答案 0 :(得分:4)
尝试使用一些内存分析/分析工具。 至少对我来说,dowser是一个很大的帮助。 http://www.aminus.net/wiki/Dowser
所以我最终将它与django进行了更多集成: https://github.com/munhitsu/django-dowser
祝你好运!