我试图追查一个PHP程序(Magento,如果它的话)内存泄漏。基本问题似乎是随着时间的推移而增长的某个对象/类中的泄漏。也就是说,记录到数据库的信息越多,某些应用程序进程最终使用的内存就越多。 Magento是一个高度抽象的系统,因此并不总是清楚正在运行的代码是如何消耗大量内存的。这就是我想要追踪的。清除memory_get_peak_usage缓存
我一直在程序引导文件末尾使用memory_get_peak_usage
来测试性能,并且在一周内从250MB的高峰使用率稳步增长到310MB的高峰使用率。我想在整个执行周期间歇地使用memory_get_peak_usage
以询问
这次调用之前的峰值用法是什么? [周期后期]这次新通话之前的峰值使用量是多少?
我遇到的问题是,一旦我打电话memory_get_peak_usage
一次,任何未来的调用返回相同的值作为第一个呼叫,甚至当我知道用电高峰已经改变。这使我相信,在调用memory_get_peak_usage
后,PHP会缓存结果。我想解开它来执行上面列出的测试。
我可以多次拨打
memory_get_peak_usage
吗?有没有其他方法来描述我上面描述的场景。 xDebug的某些功能可能?
还拿在[XHProf的(http://www.google.com/search?q=xhprof)很好看,这可能会给你的资源利用更好的概述。 – Charles 2012-03-15 04:38:56