【问题标题】:ImageMagick/Paperclip - Paperclip fails during large jobImageMagick/Paperclip - 回形针在大型作业期间失败
【发布时间】:2014-08-20 22:50:46
【问题描述】:

我正在使用带有 ImageMagick 的 Paperclip 来处理数千张图像并将它们上传到 S3。它通过数百张图像没有问题,然后给出这个错误:

An error was received while processing: #<Paperclip::Errors::CommandNotFoundError: Could not run theidentifycommand. Please install ImageMagick>

我已经看到其他引用此错误的问题,但对我来说似乎很奇怪,它可以在一秒钟内处理良好,然后下一个无法找到 ImageMagick。我正在使用 Sidekiq 处理 25 个并发工作人员。

有趣的是,当关闭sidekiq并重新启动时,它又开始工作了。

【问题讨论】:

  • 你有没有机会使用heroku?
  • 是的,我正在使用 Heroku,但这是在本地运行的,所以我认为这不会影响它。
  • 只能在处理回形针作业时将并发设置为 1 吗?
  • 您应该能够将任何类型的作业的并发设置为 1。 Sidekiq 不需要知道它正在处理什么类型的工作。

标签: ruby-on-rails imagemagick paperclip sidekiq


【解决方案1】:

我遇到了完全相同的问题,并将其追溯到 Paperclip 中的线程安全问题。见https://github.com/thoughtbot/paperclip/issues/1709

【讨论】:

    【解决方案2】:

    似乎这个问题是通过将与 sidekiq 一起使用的并发工作线程数限制为 1 来解决的。这可以通过在启动 sidekiq 时指定 -c 1 来完成。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-21
      • 2020-09-27
      相关资源
      最近更新 更多