Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何判断我的php脚本使用了多少内存/资源?_Php_Optimization_Memory Management - Fatal编程技术网

如何判断我的php脚本使用了多少内存/资源?

如何判断我的php脚本使用了多少内存/资源?,php,optimization,memory-management,Php,Optimization,Memory Management,我正在这里调试我的应用程序,简而言之,应用程序在我的在线服务器上正在消亡,或者可能是我的服务器正在消亡。但是我检查了这个应用程序,三个不同的服务器都显示了类似的结果,这个应用程序会运行一段时间,但突然之间,一旦我打开越来越多的请求,我就会出现网络错误,或者站点无法加载 我怀疑这是我的代码,所以我需要找出如何降低资源密集度,事实上我不知道它为什么要这样做。但它在我的本地主机上运行正常 还是因为我在技术共享主机上托管?我是否应该寻找专门的托管应用程序?在我的应用程序中有很多复杂的数据库查询和ajax

我正在这里调试我的应用程序,简而言之,应用程序在我的在线服务器上正在消亡,或者可能是我的服务器正在消亡。但是我检查了这个应用程序,三个不同的服务器都显示了类似的结果,这个应用程序会运行一段时间,但突然之间,一旦我打开越来越多的请求,我就会出现网络错误,或者站点无法加载

我怀疑这是我的代码,所以我需要找出如何降低资源密集度,事实上我不知道它为什么要这样做。但它在我的本地主机上运行正常


还是因为我在技术共享主机上托管?我是否应该寻找专门的托管应用程序?在我的应用程序中有很多复杂的数据库查询和ajax请求。

答案可能是您的托管公司有一个相当严格的php.ini配置。例如,它们可以限制脚本可以运行的时间量,或者限制脚本可以使用的内存量

您的代码试图做什么


你可以考虑使用和/或./P>< P>检查你的脚本使用多少内存,你可以定期调用你的代码中的点来识别你的脚本的哪些部分在使用内存。显然,返回已使用的最大内存量

您说您的应用程序可以正常运行一段时间。这是一个一直在运行的脚本,还是许多不同的页面请求/访问者?每个脚本通常有一个最大执行时间(通常默认为30秒)。这可以通过调用在每个脚本的代码中进行更改

php.ini中还设置了固有的内存限制。在共享主机上,这可能是64M或更低

“…一旦我打开越来越多的请求…”-客户端可以与服务器同时发出的(ajax)请求数量是有限制的。浏览器可以设置为8或更少(这可以在Firefox中通过
about:config
进行更改)。这是为了防止单个客户端用请求淹没服务器。可以将服务器配置为禁止打开过多请求的客户端

共享主机可能具有限制性。但是,如果主机不承载太多的站点,那么它们可以是非常强大的服务器,让您在短时间内访问大量电源。强调时间短-控制占用共享服务器上过多资源的脚本符合主机的利益,因为其他客户可能会受到影响

我是否应该寻找专门的托管应用程序


你得说得更具体些。现在大多数网站都是“应用程序”。如果你不仅仅是在为网页提供服务,而且一直在运行一段时间的密集型脚本,那么你可能需要使用专用主机。不仅是为了您的利益,也是为了共享服务器上其他人的利益

谢谢你的回答-问题是我正在37号信号基地和Highrise上运行一个应用程序。我目前在mediatemple的网格服务器上安装了它。但我的应用程序似乎消失了,在正常使用应用程序的过程中加载时,我会出现网络连接错误。它不仅仅是为网页服务,它是一个完整的应用程序,就像我提到的那样。听上去,你已经在一个相当强大的主机上了?您是否有许多用户在攻击服务器?如果你能用一个用户来测试,但是仍然失败,那么我会说这肯定是你的脚本的问题,而不是服务器的问题?