大图像文件夹崩溃Symfony"缓存:清除"使用OutOfMemoryException

时间:2017-12-14 11:31:24

标签: php symfony symfony-cache

当我在我的/web folder中放置一个大图像文件夹时,"cache"clear"命令失败并带有

  

" OutOfMemoryException异常"

PHP Fatal error:  Allowed memory size of 536870912 bytes exhausted (tried to allocate 151552 bytes) in /Users/john/Development/git/website/vendor/twig/twig/lib/Twig/Compiler.php on line 124

[Symfony\Component\Debug\Exception\OutOfMemoryException]                                  
Error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 151552 bytes)  

Exception trace:
() at /Users/john/Development/git/website/vendor/twig/twig/lib/Twig/Compiler.php:124

图像文件夹包含10,000张图像,大约600MB。当我删除此文件夹时,"缓存:清除"命令运行成功。

我将Symfony 2.8PHP 7.1一起使用。 PHP内存限制设置为512MB,这是我托管的最大值。

更新

当我向命令添加--no-warmup时,我无法获得exception

$ php app/console cache:clear --verbose --no-warmup

2 个答案:

答案 0 :(得分:2)

你可以像这样限制php命令的用法:

php -d memory_limit=512M app/console cache:clear --verbose --no-warmup

希望这适合你:)

答案 1 :(得分:-2)

你能做的是通过ini_set('memory_limit',' - 1')更改memory_limit;但这根本不是解决方案。

请不要那样做。显然,php在某处有内存泄漏,你告诉服务器只使用它想要的所有内存。这个问题根本没有解决。如果您监视服务器,您将看到它现在可能耗尽了大部分RAM甚至交换到磁盘。

您可能应该尝试跟踪代码中的确切错误并进行修复。