2011-07-26 3 views
1

PHP (CodeIgniter) Web App에서 이미지 크기 조정을 처리하는 가장 확장 가능한 방법에 대한 몇 가지 옵션을 고려하고 있습니다. 이미지 크기를 여러 크기로 조정 한 다음 Amazon S3로 보내야합니다. 그래서 여기까지 제가 지금까지 생각 해낸 옵션들이 있습니다 :확장 가능한 비동기 이미지 크기 조정

  1. 파일 업로드시 대기열에 추가하십시오. 백그라운드 PHP 나 파이썬 (분명히 PHP는 장시간 실행되는 프로세스에 좋지 않습니다) 프로그램을 실행하여 큐를보고 처리 한 다음 x 초 동안 대기하게하십시오.

  2. 파일을 업로드하면 해당 이미지를 처리하는 새로운 PHP 프로세스가 생성되어 종료됩니다.

  3. lightspun 같은 타사 서비스를 사용 (그들은 순간에 고객을 수락하지 있습니다. 거기에 다른 유사한 서비스를?)

는 아마도 내가 고려하지 않은 더 나은 옵션이 있습니다?

+0

https://github.com/eahanson/imageproxy – hakre

답변

3

당신의 첫 번째 선택은 더 믿을 만하 며 프론트 엔드를 내리지 않고 백엔드에서 작업 할 수 있다는 것을 의미합니다.

대기열이 극단적으로 바뀌면 다른 서버로 이동할 수 있기 때문에 훨씬 더 정교하게 확장됩니다.

+0

동의 함, SQS + EC2를 사용하여이 대기열 + 직원 접근 방식은 저렴하고 쉽게 확장 할 수 있습니다. –

1

당신의 첫 번째 아이디어는 이미 언급 한 이유로 좋게 들리며, 사용자의 시간을 처리하는 부담을 짊어지고 사용자 경험을 해치지 않으면 서 더 많은 이미지 크기 등을 추가 할 수 있습니다. 이미지 처리를위한 명령 줄 이미지 magick 도구를 사용하여 좋은 결과를 얻었습니다. 포크를 사용하여 장시간 실행되는 프로세스에서 PHP를 사용하여 운이 좋았습니다. http://php.net/manual/en/function.pcntl-fork.php