我的跟踪文件中有以下行:
0.5927 12212144 2780040.00 -> require_once(E:\web\lib\nusoap\nusoap.php) E:\web\some_path\file.php:28
我知道要求这个文件需要2.7MB的内存。简单地要求文件花费那么多是正常的吗?需要文件时会影响内存成本吗?
我需要另外13行,每行至少需要350,000KB的内存。我还有两条线,每条线需要1MB。再一次,这种事情是否正常?
编辑#1:
由于内存泄漏,我开始研究这个问题。我们有一个脚本会使内存使用量达到峰值,但是当它出现故障时,RAM会增加10MB +(ish)。
有一次,当Apache达到450,000 MB时,我们开始出现以下内存错误:
PHP Fatal error: Out of memory (allocated x) (tried to allocate y bytes) in/path_to/file.php(1758) on line z
答案 0 :(得分:1)
是。这很正常。 nusoap库非常大,但在PHP内部它存储为一个爆炸的二进制表示。你需要意识到需求本身不占用空间,而是包含文件。
我不太明白你的“.00”到底在哪里。我刚检查了代码,但它没有创建浮点数。
欢呼声, 德里克
答案 1 :(得分:0)
同样,这种事情是否正常?
是的,这是正常的。如果你想了解delta,请查看xdebug源代码,它可以很好地解释它。另请先阅读xdebug文档,IIRC网站告诉您,您不应该将这些数字用于实际(并且在您的问题中看起来像是以某种方式)。
另外请注意xdebug不能用于生产。如果您需要使用生产内存,则需要其他工具。