我使用 ImageMagick 的函数 thumbnailImage
生成图像。但是,有时我会收到消息:
"Maximum execution time of 30 seconds exceeded"
我注意到的一件事是,整个事情在 30 秒结束之前就爆炸了。但是报错还是已经超过最大执行时间。
有人可以给点建议吗?
最佳答案
我知道这个问题很老了,但我遇到了同样的问题,最大执行时间为 180 秒(这是完全 Not Acceptable )。经过多方挖掘,我找到了问题的根源和解决方案,我想在这里分享给以后遇到这个问题的用户。
ImageMagick 超时问题是由于与其 OpenMP 扩展相关的错误。本质上,OpenMP 扩展应该允许并行处理以加快处理速度。但是,如果您的服务器上有多个处理器或多个处理核心,那么并行进程实际上可能会相互阻止执行并使整个过程挂起。
我发现最好的解决方案是禁用 OpenMp 并重新编译 ImageMagick 包。
这是一个描述我刚才所说但更好的页面(它包含指向检查处理器和处理核心数量的说明的链接): http://www.daniloaz.com/en/617/systems/high-cpu-load-when-converting-images-with-imagemagick/
以下是有关如何禁用和重新编译包的说明: http://mapopa.blogspot.com/2011/10/php-image-slow-smp-magick-on-ubuntu.html 注意:第一行代码有错别字。它应该是:
apt-get build-dep imagemagick
关于php - ImageMagick thumbnailImage 超过 30 秒的最大执行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8413868/