ImageMagick/Paperclip — скрепка не работает во время большой работы

Я использую Paperclip с ImageMagick для обработки нескольких тысяч изображений и загрузки их на S3. Он проходит сотни изображений без проблем, а затем выдает эту ошибку:

An error was received while processing: #<Paperclip::Errors::CommandNotFoundError: Could not run theидентифицироватьcommand. Please install ImageMagick>

Я видел другие вопросы, связанные с этой ошибкой, но мне кажется странным, что он может работать нормально в одну секунду, а в следующую не сможет найти ImageMagick. Я обрабатываю с помощью Sidekiq с 25 одновременными работниками.

Интересно отметить, что при выключении sidekiq и перезапуске он снова начинает работать.


person s1ack3rhack3r    schedule 20.08.2014    source источник
comment
вы случайно не используете героку?   -  person Nick Ginanto    schedule 02.10.2014
comment
Да, я использую Heroku, но это было запущено локально, поэтому я не думаю, что это повлияло бы на это.   -  person s1ack3rhack3r    schedule 03.10.2014
comment
Могу ли я установить параллелизм равным 1, только если он обрабатывает задания со скрепками?   -  person Chris Yeung    schedule 13.06.2015
comment
Вы должны иметь возможность установить параллелизм равным 1 для любого типа задания. Sidekiq не нужно знать, какой тип задания он обрабатывает.   -  person s1ack3rhack3r    schedule 18.06.2015


Ответы (2)


У меня была точно такая же проблема, и я проследил ее до проблемы с потокобезопасностью в Paperclip. См. https://github.com/thoughtbot/paperclip/issues/1709.

person balexand    schedule 22.11.2014

Похоже, что эта проблема была решена путем ограничения количества одновременных рабочих процессов, используемых с sidekiq, до 1. Это можно сделать, указав -c 1 при загрузке sidekiq.

person s1ack3rhack3r    schedule 21.08.2014