Использование процессора Amazon ec2 невероятно высоко при обработке изображений с помощью rmagick - PullRequest
1 голос
/ 15 февраля 2012

У меня есть приложение, которое выполняет некоторую обработку изображений, используя rmagick и imagemagick. Эта обработка изображений выполнялась в фоновом режиме через resque и redis. Проблема в том, что даже один работник, который занимается обработкой изображений, съедает огромное количество процессоров. Я провел некоторые исследования и перекомпилировал imagemagick с отключенным открытием mp. Могу ли я сделать что-нибудь еще, чтобы разумно использовать ресурсы?

Я использую экземпляр Amazon с высоким процессором с Ubuntu 10.04 в качестве операционной системы.

Ответы [ 2 ]

1 голос
/ 23 февраля 2012

Кажется, я решил проблему, выполнив следующее:

Я удалил все следы установленных пакетов Ubuntu ImageMagick.

dpkg --get-selections > installed-software
cat installed-software | grep magick

Затем я удалил весь пакет ubuntu, полученный в результате вышеуказанного запроса. После этого я перекомпилировал imagemagick с отключенным open mp и переустановил гем rmagick.

1 голос
/ 15 февраля 2012

Вы можете обратить внимание на GraphicsMagick, форк, ориентированный на повышение производительности;некоторые из их более старых тестов показывают тип увеличения производительности, который вы могли бы видеть.

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

Единственное другое полезное направление, если ваши изображения подходят, ищет различные алгоритмы, которые не распаковывают изображение. JPEG имеет множество инструментов, которые могут работать со сжатыми данными, что существенно сокращает как время обработки, так и потребление памяти по сравнению с работой с распакованными данными.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...