【发布时间】:2011-04-07 03:42:47
【问题描述】:
当使用 Symfony 1.x 进行单元测试时,我们目前遇到了内存泄漏问题,相当数量的测试消耗了 512MB 内存。
目前我们已经尝试过:
- 使用 phpunit 插件
- 使用石灰
- 将测试限制为几个 sfPropelData 负载 + 重复几次功能测试
- 切换到 PHP 5.3.3 来处理循环引用
- 检查内存使用 xdebug 并没有提供太多洞察
很快我们就会尝试:
- 仅功能测试
- 替换 sfPropelData 代替加载普通 SQL 文件
- 只有没有任何 ORM 调用的功能测试
- Valgrind?
我在想可能是 symfony 中的静态变量没有得到清理,或者 PDO 层本身正在泄漏内存。当然,最后一个选择是想办法在自己的进程中运行一套测试。
我们正在通过可能的领域取得进展,我不希望任何人真正帮助我们解决细节,但我只是提出这个问题,看看是否有人经历过这种情况以及他们在哪里找到的泄漏或他们为解决此问题所做的工作。
另外,对其他可以提供帮助的工具(例如 valgrind)有什么意见吗?
【问题讨论】: