首页 > 解决方案 > 在 Heroku 上使用 ImageMagick/MiniMagick 在 Rails 中将 TIFF 转换为 PDF

问题描述

我正在尝试使用 mini_magick GEM 在 Rails 4.2.6 中将 TIFF 文件转换为 PDF。转换在开发中测试时有效,但在 Heroku cedar-14 堆栈上的生产中,它们会产生如下错误:

convert /tmp/mini_magick20181121-5-11mxfxh /tmp/mini_magick20181121-5-6e3jp2.pdf` failed with error: 
convert.im6: memory allocation failed `/tmp/mini_magick20181121-5-11mxfxh' @ error/tiff.c/ReadTIFFImage/1268. 
convert.im6: no images defined `/tmp/mini_magick20181121-5-6e3jp2.pdf' @ error/convert.c/ConvertImageCommand/304

ImageMagick 6.7.7-10 2018-09-28 Q16

特点:OpenMP

创业板:mini_magick 4.9.2

导轨 4.2.6

更新:生产服务器有太多内存。当我用 2.5 GB 测功机运行它时,它失败了。当我使用 1 GB 测功机运行它时,它可以工作。我也在舞台服务器上复制了这个。增加服务器内存会导致它因内存错误而失败(非常倒退!)。我尝试添加环境变量 MAGICK_MAP_LIMIT 和 MAGICK_MEMORY_LIMIT 但它们似乎没有效果。还尝试在-limit memory 200MB -limit map 200MB命令行上传递无效。

标签: ruby-on-rails-4herokuimagemagickminimagick

解决方案


推荐阅读