2012-03-12 33 views
47

Mamy naszą aplikację hostowaną w silniku aplikacji Google dla Javy i mamy wymóg, aby gdzieś chcieć przechowywać certyfikaty uznania dawcy krwi (pliki html).Google Blobstore versus Google cloud storage

Możemy zatem używać zarówno sklepu Google BLOB, jak i Google Cloud Storage. Wiem, że oba te rozwiązania są możliwe do wykonania przy użyciu gae dla Javy

Jednak problemem jest dla nas decyzja, który z nich użyć. Jakie są plusy i minusy tych dwóch podejść?

Jesteśmy non-profit i nie możemy dużo zapłacić.

+0

Uważam, że to pytanie jest zbyt szerokie, ponieważ jest obecnie sformułowane. Możesz przeprowadzić własne badania, aby samemu łatwo znaleźć plusy i minusy obu tych metod. Jeśli masz konkretne pytanie, to jest dobre dla StackOverflow. –

Odpowiedz

12

Lepiej używać Blobstore. Usługa ma 5 GB miejsca za darmo (stan na marzec 2012). Magazyn w chmurze jest usługą płatną. Blobstore App Engine jest podobny do Amazon S3, ale mniej elastyczny. Ma API oparty na HTTP i interfejsy API Java/Python (patrz http://code.google.com/appengine/docs/java/blobstore/overview.html).

+7

Domyślny zasobnik w Cloud Storage jest również bezpłatny do 5 GB. A powyżej, od tej pory oba kosztują tyle samo: 0,026 $/GB/miesiąc. –

+1

odczytuje i zapisuje na koszt BlobStore po punkcie, CloudStore, że nie płacą za pamięć powyżej 5GB.Oczywiste jest, że Google chce wycofać Blobstore dla CloudStore i sprawiają, że CloudStore jest tańszą opcją, aby to osiągnąć. a także usunięcie tego niedorzecznego żądania oddzwonienia do strony blobstore. GCS to zwykły stary PUT/POST do Serwletu lub zapis do strumienia od strony serwera. –

+4

W rzeczywistości Blobstore jest lepszy, jeśli chodzi o obrazy, ponieważ można z łatwością przesyłać obrazy o zmienionym rozmiarze do wielu aplikacji i może być obsługiwany tylko jeden obraz o zmiennej wielkości naraz z Cloud Storage. (https://cloud.google.com/appengine/docs/java/images/#Java_Images_and_the_development_server) Również fakt, że przy korzystaniu z Blobstore żądanie nie przechodzi przez serwer, ale obraz jest dostarczany bezpośrednio do aplikacji klienckiej. Te dwie przyczyny powodują, że Blobstore jest dla mnie lepszy. (również Blobstore jest teraz bez limitu rozmiaru) – makkasi

12

Po pierwsze, powiedziałbym, że jeśli twoje pliki HTML są małe (lub mogą być małe z kompresją gzip), to po prostu przechowuj je jako BlobProperty w magazynie danych i dodawaj właściwości meta-danych, aby móc je odzyskać to odpowiednio później.

Jeśli nie jest to opcja, to może rozważyć przyszły rozwój aplikacji. Dwie duże rzeczy, które Cloud Storage ma ponad Blobstore, to 1) dostępność dla stron trzecich i 2) brak ograniczeń co do rozmiaru pliku.

  • Czy inne usługi będą również musiały przeczytać lub zapisać te pliki? Następnie użyj Cloud Storage.
  • Czy Twoje pliki prawdopodobnie przekroczą 50 MB? A może ich rozmiary prawdopodobnie nie są znane? Następnie użyj Cloud Storage.

Jeśli jednak wiesz, że te dwie rzeczy nigdy nie będą musiały zostać zaadresowane do twojego wniosku, po prostu trzymaj się Blobstore.

+8

Limity rozmiarów plików Blobstore zostały całkowicie usunięte Sierpień 2011 http://code.google.com/p/googleappengine/issues/detail?id=2560 –

37

Jeśli rozpoczynasz nowy projekt, skorzystałbym z Cloud Storage.

Wygląda na to, że Google przesuwa swoją platformę Cloud Storage bardziej niż platformę blobstore. Na przykład obecnie programowo zapisuje pliki do blobstore is deprecated, ale is supported by Cloud Storage. Nie mogę czytać przyszłości, ale założę się, że Google będzie coraz częściej wycofywać API blobstore na korzyść interfejsu Cloud Storage API, co doprowadzi do bóle głowy w dół.

UPDATE: Programowo piśmie do Blobstore nie jest już obsługiwany, ale jest w pełni obsługiwana w App Engine. Ponadto można użyć interfejsu API blobstore i nadal korzystać z Cloud Storage jako zaplecza. W tym momencie jest jasne, że Cloud Storage przeżyje blobstore.

AKTUALIZACJA 2017: Google official recommendation jest teraz do przechowywania w chmurze zamiast do blobstore. Nazwał ten jeden 4 lata naprzód.

+1

Biorąc pod uwagę, że zostały one "wyodrębnione" z aplikacji Engine Datastore w samodzielne usługi w chmurze wydaje się jasne, że zmierzają w kierunku modelu dyskretnych usług typu AWS, z których można korzystać osobno lub razem. Google Cloud Storage wypełnia już tę rolę i jest aktywnie promowany; mając na uwadze, że Blobstore wydaje się zbędny. –

Powiązane problemy