我在Webfaction和AWS EC2 微实例(613MB 的 RAM)服务器上运行 Django 应用程序。从过去的 2-3 个月开始,我面临内存超出限制的问题(目前只有 4-5 个用户在使用此应用程序)。由于内存超出限制,MySQL 和 APACHE 进程被杀死。我已采取以下步骤来减少内存消耗-
- 删除了“.all()”django 查询。
- 交换空间 1.5 GB。
- Apache 配置更改为:
- 启动服务器 4
- MinSpareServers 2
- MaxSpareServers 4
- 最大客户数 7
- 服务器限制 7
- MaxRequestsPerChild 0
- MySQL -> my.cnf 更改为:
- 慢查询日志=1
- 最大连接数=45
- query_cache_size=16M
- 表缓存=128
- tmp_table_size=32M
- max_heap_table_size=33554432
- 安装“Dozer”以查找内存泄漏(未报告任何问题)。
有人请告诉我,还有什么办法可以减少内存消耗。还让我知道,我如何跟踪 django 过滤器查询所花费的时间。