问题标签 [memory-limit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
25 回答
685851 浏览

php - php中允许的内存大小为33554432字节耗尽(尝试分配43148176字节)

正在显示此错误消息,有什么建议吗?

php中允许的内存大小为33554432字节耗尽(尝试分配43148176字节)

0 投票
32 回答
1647446 浏览

php - 致命错误:已用尽 134217728 字节的允许内存大小(CodeIgniter + XML-RPC)

我有一堆客户销售点 (POS) 系统,它们定期将新的销售数据发送到一个中央数据库,该数据库将数据存储到一个大数据库中以生成报告。

客户端 POS 基于 PHPPOS,并且我已经实现了一个使用标准 XML-RPC 库将销售数据发送到服务的模块。服务器系统建立在 CodeIgniter 之上,并使用 XML-RPC 和 XML-RPCS 库作为 Web 服务组件。每当我发送大量销售数据(销售表中少至 50 行,以及与销售中的每个项目相关的 sales_items 中的各个行)时,我都会收到以下错误:

128M 是 中的默认值php.ini,但我认为这是一个很大的数字。事实上,我什至尝试过将此值设置为 1024M,但它所做的只是需要更长的时间才能出错。

至于我采取的步骤,我尝试禁用服务器端的所有处理,并操纵它以返回预设响应,无论输入如何。但是,我认为问题在于数据的实际发送。我什至尝试禁用 PHP 的最大脚本执行时间,但它仍然出错。

0 投票
6 回答
9641 浏览

php - 增加 PHP 内存限制(Apache、Drupal6)

我正在尝试在共享托管服务器上运行 Drupal 安装。(我只是订阅了一个提供商——我不拥有这个盒子。)

我需要增加我的 Apache 服务器的 PHP 内存限制。我努力了

在 settings.php (包含在每个请求中的文件)中,但这会导致内部服务器错误 500。如果我把它拿出来,我会收到这个错误:

附带问题:19456 小于 33554432。为什么说允许的大小已用尽?

我也试过把它放在.htaccess上:

这没有效果。

0 投票
1 回答
661 浏览

macos - OSX php.ini 内存限制

当您使用最新版本的 OSX (10.6) 时,8M 的内存限制(或您设置的任何内容)是否意味着您现在正在运行 8 000 000 字节而不是 8 388 608?

0 投票
5 回答
3400 浏览

php - PHP 内存限制 25MB 已用尽 - 文件上传/裁剪/调整大小

我正在对最大 10MB 的文件使用单个图像上传/裁剪/调整大小脚本。

测试时,我将 php_ini 内存限制设置为 25M,上传文件仅约 1.4MB 时已耗尽。

这对我来说似乎很奇怪,不是 10368 < 26214400 吗?(反问)

或者这是否意味着我在 25MB 上占用了 10368 字节?我的脚本应该使用这么多内存吗?

代码:

0 投票
2 回答
6737 浏览

domdocument - PHP 命令行脚本忽略 php.ini 和 ini_set('memory_limit',...) 指令

我面临常见的“致命错误:内存不足(分配 30408704)(试图分配 24 个字节)......”PHP 致命错误。通过 Apache 提供的页面没有表现出这种行为。

我尝试了以下方法:

  1. 将 php.ini 中的 memory_limit 增加到更大的值。
  2. 通过调用ini_set('memory_limit', -1), ini_set('memory_limit', '-1'), ini_set('memory_limit', 100000000),ini_set('memory_limit', '128M')等来增加脚本本身的 memory_limit。
  3. unset()ing 不需要的数组和对象,以鼓励垃圾收集器释放内存。
  4. 联系网络主机。他们通常非常有能力和知识渊博,但也无法帮助我解决这个问题。
  5. 我已经尝试使用-c命令行标志明确包含一个 php.ini 文件,以手动选择具有各种值的特定 php.ini 文件。
  6. 我尝试使用原始字节数和值(例如 64M、128M 等)在 php.ini 中设置 memory_limit。
  7. 托管服务提供商能够以 root 身份运行脚本而没有任何问题,但在使用非 root 用户运行脚本时遇到了同样的问题。也许涉及某种权限问题?

无论我尝试什么,错误消息都是一样的。看来我的命令行脚本忽略了对memory_limit.

我倾向于尝试确保我的脚本具有内存效率,但我目前需要通过简单的 HTML DOM解析大量的 HTML,并且在解析器中我遇到了内存不足的问题。为了减少脚本的内存占用,我尝试使用DOMDocument代替。这也无济于事。事实上,内存不足错误现在在脚本的其他地方触发。

我的问题:有没有人遇到过这个或类似的问题?你有什么建议?

谢谢你。

0 投票
1 回答
3222 浏览

php - Salesforce/PHP - 出站消息 (SOAP) - 内存限制问题?DOMDocument::loadXML() 标签问题中的数据过早结束?

更新:

好的,我想通了,看起来 fread 有文件大小限制,将其更改为

file_get_contents('php://input')

,但现在让 SF 给出 java.net.SocketTimeoutException: Read timed out 错误,而 PHP 端什么也没有。我还添加了 set_time_limit(0); 到 PHP 脚本,如果我理解正确,只要它需要执行脚本。有什么想法吗?

顺便说一句:我最多可以处理 25 个(我已经测试过)但不能处理 100 个


我正在使用 Salesforce 将出站消息(通过 SOAP)发送到另一台服务器。服务器一次可以处理大约 8 条消息,但如果 SOAP 请求包含超过 8 条消息,则不会发回 ACK 文件。SF 可以在 1 个 SOAP 请求中发送多达 100 条出站消息,我认为这会导致 PHP 出现内存问题。如果我一个接一个地处理出站消息,它们都可以正常处理,我什至可以一次处理 8 个,没有任何问题。但是更大的套装不起作用。

SF中的错误:

查看 HTTP 错误日志,我看到传入的 SOAP 消息似乎正在被截断,这会引发 PHP 警告,说明:

PHP致命错误:

这让我相信 PHP 存在内存问题,并且由于它的大小而无法解析传入的消息。

我在想我可以设置:

但这会是正确的方法吗?有没有办法可以将其设置为随着传入的 SOAP 请求动态增加?

更新:添加一些代码

来自 Salesforce 的示例 SOAP 请求,将有多个通知节点添加到更大的请求中。

0 投票
3 回答
2218 浏览

cron - PHP - Plesk - Cron - 允许的内存大小耗尽?

这是我脚本最顶部的前两行。

如果我通过 cron 内存限制运行某些东西,我的印象是不适用,但我错了。安全模式已关闭,当我测试是否正在设置这些值时,它们是,但我不断收到“PHP 致命:内存耗尽”错误。

有什么想法我可能做错了吗?为“内存限制”值写“无限”的“更优雅的方式”是-1还是什么?

0 投票
2 回答
1061 浏览

.net - 为什么我不能在 .NET 中创建大于 2GB 的对象,即使在 x64 上也是如此?

阅读后C# 字符串(和其他 .NET API)的大小是否限制为 2GB?我在 .NET 3.5 中使用过大字符串和数组。我发现我可以分配的最大数组是int.MaxValue - 56字节。字符串的类似情况:我能得到的最大的是(int.MaxValue - 58) / 2字符(因为每个字符占用 2 个字节)。之后它抛出OutOfMemoryException

为什么会存在这种限制?并不是说我在实践中遇到过它——我只是对 .NET 的内部工作原理感到好奇。

是的,这当然是在具有大量 RAM 的 64 位机器上 - 是的,该进程作为 64 位进程运行。(我实际上可以分配 3 个这样的数组或字符串,总内存使用量为 6GB。)

0 投票
2 回答
15191 浏览

vba - 集合最大大小

这是我的代码:

我正在用目录结构中的文件名列表填充一个集合。

我有 2000 个文件,但 Collection 只返回 256 个。有谁知道是否有一个不会超过的最大数量?

如果是这样,您能否建议一种更好的方法来编写此宏以捕获所有 2000 个文件?