2011-02-10 1 views
0

다음과 같은 시나리오가 있습니다. 많은 이미지 파일이 PHP 스크립트에 게시됩니다 (http POST). 그런 다음 스크립트는 데이터베이스에서 일부 설정을 한 다음 (이 작업은 빠름) S3 버킷에 이미지 파일을 저장합니다.PHP로 POST 파일 수신을 최적화하고 S3에 넣는 방법

크기를 조정하려면 메모리에있는 모든 이미지를로드 할 때 스크립트가 동시에 수신 할 수있는 이미지의 수를 제한해야한다고 생각합니다.

질문 : 이것입니까? 그렇다면 어떻게 피해를 제한 할 수 있습니까? 아마도 이미지를 메모리에로드하는 것을 피할 수 있습니까? (나는 그걸로 아무 것도 할 필요가 없으며 단지 S3에 게시하고 데이터베이스에 기록한다).

답변

0

This PHP S3 library은 디스크에서 직접 파일을로드합니다. $ _FILES 배열의 파일 이름을 전달하면 디스크에서 파일을 캐싱하지 않고 S3로 바로 읽습니다. 뭔가 잘못되었을 때 예외를 throw하도록 코드를 수정했습니다.

0

Browser-Based HTTP POST을 사용하여 사용자가 웹 페이지에서 직접 S3에 업로드하도록 할 수 있습니다.

또는 웹 서버의 파일 시스템에서 S3 로의 스트리밍을 지원하여 메모리에 즉시로드하지 않고도 PHP + S3 용 툴킷을 여러 개 사용할 수 있습니다. 개인적으로 나는 official SDK을 사용합니다.