问题标签 [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 投票
2 回答
8351 浏览

php - 如何在 Dreamhost 上设置 memory_limit php 5.3

我目前正在使用 Dreamhost 来托管我的网站。但是,我正在使用的应用程序需要比默认的 90M 更高的内存限制。我对此比较陌生,我尝试了以下尝试修改 php.ini 文件但没有任何运气。

我浏览了有关如何为 php 5.3 创建自定义 php.ini 文件的 wiki,但在设置 memory_limit 时遇到问题。

我已按照以下链接中的说明进行操作:http ://wiki.dreamhost.com/PHP.ini


在https://panel.dreamhost.com/index.cgi?tr...in.manage&登录面板并更改您的域以使用 php5.3(可能是快速 cgi)

在您的用户下创建一个名为 .php 的目录,其中包含一个名为 5.3 的子目录。该目录下的文件将被该用户下设置为使用 PHP 5.3 的所有域使用。

终端示例

一旦此目录存在,您可以在其中创建两个文件:

要将自定义指令添加到 PHP,请在 .php/5.3/ 下创建一个名为“phprc”的文件并向其中添加配置指令。您不需要将默认的 php.ini 复制到该文件中,因为它是在系统 php.ini 之外使用的;如果一个指令出现在两个文件中,则此文件中的指令将优先。


在我的 phprc 文件中,我添加了以下几行:



zend_extension 在 phpinfo() 中被提取和验证,但是 memory_limit 不会更改为 128M。还有其他方法可以更改内存限制吗?或者在 phprc 文件中更改它不是正确的方法。还有另一篇文章指出,除了 memory_limit 的 init_set 之外的所有命令都有效。

顺便说一句:这里是 phpinfo() - http://peachjar.com/phpinfo.php

0 投票
38 回答
119580 浏览

algorithm - 生成一个不属于 40 亿给定整数的整数

我收到了这个面试问题:

给定一个具有 40 亿个整数的输入文件,提供一个算法来生成一个不包含在文件中的整数。假设您有 1 GB 内存。跟进如果您只有 10 MB 的内存,您会做什么。

我的分析:

文件大小为 4×10 9 ×4 字节 = 16 GB。

我们可以进行外部排序,从而让我们知道整数的范围。

我的问题是在排序的大整数集中检测缺失整数的最佳方法是什么?

我的理解(阅读所有答案后):

假设我们谈论的是 32 位整数,则有 2 32 = 4*10 9 个不同的整数。

案例 1:我们有 1 GB = 1 * 10 9 * 8 位 = 80 亿位内存。

解决方案:

如果我们使用一位代表一个不同的整数,就足够了。我们不需要排序。

执行:

情况 2:10 MB 内存 = 10 * 10 6 * 8 位 = 8000 万位

解决方案:

对于所有可能的 16 位前缀,有 2 16个整数 = 65536,我们需要 2 16 * 4 * 8 = 2 百万位。我们需要构建 65536 个存储桶。对于每个桶,我们需要 4 个字节来保存所有可能性,因为最坏的情况是所有 40 亿个整数都属于同一个桶。

  1. 通过文件的第一次遍历构建每个桶的计数器。
  2. 扫描桶,找到第一个命中少于 65536 的桶。
  3. 构建新的存储桶,其高 16 位前缀是我们在第 2 步到文件的第二遍中找到的
  4. 扫描step3构建的bucket,找到第一个没有命中的bucket。

代码与上面的代码非常相似。

结论:我们通过增加文件传递来减少内存。


对迟到的人的澄清:问题,正如所问的,并不是说文件中不包含确切的一个整数——至少大多数人不是这样解释的。不过,评论线程中的许多评论都是关于该任务的变体。不幸的是,将它引入评论线程的评论后来被其作者删除,所以现在看起来对它的孤立回复只是误解了一切。非常混乱,抱歉。

0 投票
1 回答
1620 浏览

php - 尝试在本地运行 Wordpress 站点时出现内存限制问题

我正在一个 wordpress 网站上工作,我正在尝试建立一个本地测试环境以用于开发目的。我正在运行 MAMP(Mac Apache MySQL PHP)堆栈。

我遇到以下错误:

我试图通过修改 wp-config.php 中的第 28 行来增加内存限制:

并通过在 index.php 中包含以下值

我尝试过的任何内存值都没有运气。我对wordpress比较陌生,有人知道发生了什么吗?

0 投票
4 回答
4413 浏览

c++ - C++ 更改最大 RAM 限制

如何更改程序的最大 RAM 量?我经常耗尽内存(不是系统最大值,ulimit max),我不想更改全局内存限制。我环顾四周,发现 vlimit() 函数可能有效,但我不确定如何使用它。

编辑:我在 linux 2.6.38-11-generic 这不是内存泄漏,我实际上必须分配给定类的 100k,没有办法解决。

0 投票
2 回答
2815 浏览

php - PHP 内存限制/RAM 问题

我有一个关于 PHP 及其内存限制的问题。我有一个index.php页面,需要memory_limit设置为大约50MB或更多才能运行。

那么这是否意味着任何时候有人访问该页面都需要 50MB 的 RAM 内存来加载该页面?

换句话说,如果 2 个客户端同时请求同一个页面,那么服务器需要 100MB 的空闲 RAM 内存来为它们服务?

0 投票
1 回答
356 浏览

php - apache 因某些请求而减慢速度

我已经安装了 apache 的 MPM 和磁盘缓存模块、PHP 的 XCache 和 w3 总缓存插件来加快我的 WPMU 安装。

总体而言,该网站似乎做得很好,但是当我访问 /wp-admin/ 页面时,响应时间通常会大大增加,并且有时会收到 404 请求页面,或“致命错误:允许的内存大小......字节用尽”。

XCache 似乎工作正常,并且 memory_limit 设置为 64MB。我应该在哪里挖掘来解决问题?

0 投票
1 回答
1386 浏览

php - 使用 imagecreatefromjpeg 同步图像时允许的内存大小耗尽

我正在尝试使用 imagecreatefromjpeg 将图像从一个目录同步到另一个目录以调整过程中的图像大小。该脚本总共必须处理 15 GB 的图像文件。起初脚本运行得很好,直到我遇到内存限制。我发现通过设置以下代码可以解决此问题:

但是在同步了更多图像之后,同样的问题又一次又一次地发生,直到第五次我将限制设置为 1000M,但这并没有解决问题。即使在尝试了 9999M 之后,它仍然给了我同样的错误:

我检查了我的 phpinfo() 并发现它设置正确:

谁能给我另一种选择来增加内存限制?

添加我用于同步的代码:

我提前为一些荷兰变量名称道歉。

编辑 1-12-2011 12:00:刚刚发现问题出在 62MB 的图像文件上。看起来文件更大然后给或取 55MB 是问题所在。有人知道是什么原因造成的吗?

0 投票
3 回答
227 浏览

php - php上奇怪的内存不足行为

嗨,我收到以下奇怪的错误

致命错误:内存不足(分配 29097984)(试图分配 802454 字节)

当我这样做时,ini_get('memory_limit')我得到了256M

在上述错误中,脚本在到达时死亡27M??

任何建议都在使用共享主机帐户。

0 投票
3 回答
23614 浏览

php - phpunit memory_limit 参数不适用

我刚刚在 mac osx 10.7 中通过 pear 安装了 phpunit,一切正常,除了出现内存限制错误(为报告启用了 xdebug)。

我试图将-d memory_limit=512M参数添加到 phpunit 但它没有应用,因为在第一个错误中,我添加了var_dump(ini_get('memory_limit')); exit;它并打印 string(3) "32M"

那么,为什么它没有被应用呢?

除此之外,如果我跑

它呼应“256M”

phpunit是否有可能没有执行相同的php?

0 投票
1 回答
1373 浏览

php - 在不超过内存限制的情况下在php中调整多个图像的大小

我目前正在尝试获取一个表单,该表单允许使用 PHP 在服务器上上传多个图像并调整其大小。客户端上传的每张图片大小约为 2.5mb。

我目前正在使用该move_uploaded_file()功能。

将文件移动到服务器上没有问题。当我尝试裁剪时,问题就出现了。在我的主机上没有ImageMagick我正在使用这个设置(不是所有的代码都是相关的,这是一个循环,$width等等。改变不同的裁剪尺寸)

就目前而言,这仅适用于 2 张图像。如果提交了 3 个或更多,我会收到“内存耗尽”错误。我已经对此进行了研究,因为我的内存限制是 120mb。显然,该imagecreatefromjpeg函数使用了大量内存,特别是如果文件具有较大的分辨率(我的分辨率很高 - 因此我需要裁剪/调整它们的大小)。

有谁知道更有效的方法来完成这项任务?我在谷歌上进行了研究,但每个人都使用与我相同的技术。