2012-02-15 1 views
1

rmagick 및 imagemagick을 사용하여 일부 이미지 처리를하는 응용 프로그램이 있습니다. 이 이미지 프로세싱은 백그라운드 작업에서 resque와 redis를 통해 수행되었습니다. 문제는 이미지 처리를하는 한 명의 작업자조차도 엄청난 양의 CPU를 먹고 있다는 것입니다. 일부 연구를 수행하고 열린 mp가 비활성화 된 imagemagick을 다시 컴파일했습니다. 리소스 사용을 합리적으로 만들기 위해 할 수있는 다른 일이 있습니까?rmagick으로 이미지를 처리 ​​할 때 Amazon ec2 cpu 사용량이 매우 높습니다.

우분투 10.04와 함께 높은 CPU 아마존 인스턴스를 운영 체제로 사용하고 있습니다.

답변

1

그것은 내가 수행하여 문제를 해결 한 것 같다 다음

내가 우분투를 설치 ImageMagick이 패키지의 모든 흔적을 제거했습니다.

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

그런 다음 위 쿼리에서 나온 모든 우분투 패키지를 제거했습니다. 그 후 나는 mp를 해제하고 다시 rmagick gem을 다시 설치하여 imagemagick을 다시 컴파일합니다.

+0

어떻게하면 되나요? – Automatico

1

더 높은 성능에 중점을 둔 포크 인 GraphicsMagick을 살펴볼 수도 있습니다. 그들의 older benchmarks 중 일부는 당신이 볼 수있는 성능 향상의 종류를 보여줍니다.

최근 벤치 마크를 반복하지 않았기 때문에 독립성이나 최신 버전의 정확성을 보장 할 수는 없습니다. 나는 2 년 전의 관찰 결과가 성능 차이와 일치했다는 것을 말할 수 있습니다.

다른 유용한 방향은 이미지가 적합한 경우 이미지 압축을 풀지 않는 다양한 알고리즘을 찾는 것입니다. JPEG에는 압축 된 데이터를 처리 할 수있는 도구가 많이 있으므로 압축 해제 된 데이터를 처리하는 것과 비교하여 처리 시간과 메모리 사용량을 크게 줄일 수 있습니다.