我有一个函数,它使用Imagick使2D图像的3D效果(假透视)。我必须一次处理大约10-30张图像,这就是问题所在。我很担心CPU使用率,因为我的服务提供商限制了60秒的CPU使用率
我想使用CRON来生成例如每分钟5个图像。我已经想到了其他的解决方案-使用睡眠给CPU一些休息。是我说对了还是这只是我的蠢主意?
你会怎么做?服务提供商是OVH,服务是简单的托管。
对不起我的英语,来自波兰的Chris:)
我也有同样的问题,想要减少imagemagick的CPU使用率…
首先,你可以尝试优化你使用它的方式,例如,如果可能的话:-使用API包装器而不是命令行调用-在一个'convert'命令中执行多个转换-…来源:http://www.imagemagick.org/Usage/api/#speed
然后,为了控制imagemagick的CPU使用情况,并对使用的系统资源施加限制(以及许多其他事情),您可以设置一个安全策略文件来源:http://www.imagemagick.org/script/security-policy.php
或者您可以尝试直接使用环境变量做同样的事情,例如"MAGICK_THREAD_LIMIT=1"或"MAGICK_THROTTLE"(例如在命令行或直接在PHP脚本中设置在系统环境中)来源:http://www.imagemagick.org/script/resources.php#environment
也请阅读作为一个开始这些有趣的帖子:http://www.imagemagick.org/discourse-server/viewtopic.php?t=20130http://www.azanweb.com/en/high-cpu-load-when-converting-images-with-imagemagick/
希望这对你有帮助!