В одном приложении, которое я создал, пользователи имели возможность загружать PDF-файлы, которые были загружены при загрузке для создания изображений для предварительного просмотра.Поскольку PDF-файлы могут быть очень большими, миниатюры могут занять некоторое время и работать в фоновом режиме.Для этого я использовал
- Скрепка для загрузки,
- delayed_paperclip gem для передачи миниатюр в фоновый процесс,
- Resque , при поддержке Redis , для обработки очереди работника, и
- гем God , чтобы запуститьRedis и Resque рабочие и контролируют весь shebang.
С положительной стороны, вы получаете отличный графический интерфейс Resque для просмотра ваших рабочих в действии, и у вас есть Бог, чтобы следить (и убивать)и перезапустите) ускоренные процессы (которые обычно происходят довольно часто при обработке PDF-файлов в ImageMagick), что делает все это намного более стабильным и надежным.
С минусовой стороны, чертовски сложно настроить, чем задание cron.Но выполнение cron долгого процесса, не требующего большого объема памяти, кажется мне рецептом катастрофы.
Надеюсь, это поможет!