使用php在服务器上的内存消耗

时间:2014-04-25 09:41:13

标签: php

在我的应用程序中,我经常会遇到此错误

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 52944 bytes) in C:\xampp\htdocs\demo\index.php on line 337

到目前为止,我正在使用localhost并遇到内存错误当我将应用程序部署到服务器上时,许多用户一次执行相同的操作。

我只想问一下如何查看内存中的资源

并且在服务器上每个用户获得一个单独的内存,所有用户都使用我在localhost中使用的128 Mb内存

2 个答案:

答案 0 :(得分:1)

您可以使用此功能检查RAM使用情况:

function getRamUsage($size) {
    $unit = array('b','kb','mb','gb','tb','pb');
    return @round($size/pow(1024,($i=floor(log($size,1024)))),2).' '.$unit[$i];
}

示例:

$ramUsage = getRamUsage(memory_get_usage(true));

无论如何,恕我直言,你的代码需要被审查和/或重写。请发一些代码,你在第337行的index.php中发生了什么?

答案 1 :(得分:0)

在本地将error_reporting转为E_ALL,看看是否正在输出任何内容,因为您可能在服务器上禁止了错误消息,但是如果您设置了此消息,它仍然可以将其缓冲到文件或数据库表,这会耗尽内存和您应用的速度