2012-08-27 15 views
7

Tworzę aplikację na iPhone'a, aby umożliwić użytkownikom przesyłanie zdjęć &. Obecnie przesłane zdjęcia są przechowywane na moim serwerze w chmurze 1 i 1, który subskrybowałem. Teraz chcę spróbować AWS. Zaprenumerowałem bezpłatny system AWS Linux EC2 i skonfigurowałem php/mysql. Moje pytanie brzmi, dla celów skalowalności, gdzie powinienem przechowywać zdjęcia użytkowników: EC2 lub S3? A jak połączyć EC2 z S3, aby przesłane przez użytkownika zdjęcia były przechowywane w S3? Rozumiem, że gdy użytkownik przesyła zdjęcie do mojej instancji EC2, jest on zapisany w EC2 i wkrótce wypełni przestrzeń, ponieważ mam tylko 5 GB miejsca.Jak używać usługi AWS S3 do przechowywania zdjęć przesłanych przez użytkownika?

Z ograniczoną znajomością AWS, moje pytanie może brzmieć st ** d, ale każda pomoc i rada zostaną docenione!

Odpowiedz

6

Należy przechowywać swoje zdjęcia w S3, dane przechowywane w twoich instancjach EC2 nie są trwałe. Użyj pakietu SDK AWS, aby przesłać dane do S3.

+2

Instancje EC2 * są * trwałe, jeśli utworzysz je jako woluminy EBS, które powinieneś prawie zawsze robić. http://stackoverflow.com/a/3630707/141172 –

+0

Witaj, Michael - Mówisz, że moja aplikacja powinna bezpośrednio wywoływać interfejs S3 iOS API, aby zapisać zdjęcie w S3? Widziałem wiadomość, że S3 to "ostateczna spójność", co oznacza, że ​​po pomyślnym przesłaniu zdjęcia zdjęcie może nie być natychmiast dostępne do odczytu. Jednak aplikacja na iPhone'a nie musi odczytywać zdjęcia z serwera, aby od razu wyświetlić je na ekranie. W ten sposób aplikacja iPhone zinterpretuje załadowanie jako "awarię" i spróbuje ponownie przesłać. – 100calorie

+0

Eric - sprawdź poniższe http://stackoverflow.com/questions/2288402/should-i-persist-images-on-ebs-or-s3 – 100calorie

5

W tym przypadku używałbym S3.

Zaletą używania podkładu S3 do zdjęć jest to, że można łatwo użyć Amazon's Cloud Front CDN z S3 jako punktem początkowym (można również użyć instancji EC2, ale wymaga to więcej pracy).

I jak podłączyć EC2 z S3 więc użytkownik przesłanych zdjęć będą przechowywane w S3

Istnieje API S3 PHP

http://aws.amazon.com/sdkforphp/

Powiązane problemy