2016-07-22 10 views
0

Die BlobStore-API ist als "ersetzbar" markiert und auf 32 MB begrenzt. Der Google Cloud Storage ist ein Anbieter-Lock-In.Umgang mit Blobs in Google App Engine alternativ zu Cloud Storage und BlobStore API

Gibt es eine Möglichkeit Blobs mit einem dritten Teil lib In Google App Engine (nicht flexibel/Managed-vms) zum Beispiel jclouds

Und wie würde die 60 Sekunden Anfrage Grenze eines Bypass zu laden, die DeadlineExceededException verursacht?

Um die Frage zu verbessern; Sicherheit ist ein Problem, es wäre am besten, jede Anforderung durch die Anwendung auszuführen, also auch Blob-Uploads. Das macht die 60 Sekunden ein Problem. Die separate uploadUrl ist eine Option, aber ich möchte nicht BlobStore oder Cloud Storage verwenden, aber gibt es eine generische Möglichkeit, solche Dinge in GAE zu behandeln?

+0

Lieferantensperre ??? Es dauert ein paar Zeilen Code, um die Dateien hochzuladen, und Sie können sie jederzeit verschieben. Wenn Sie Ihren Code richtig verwenden, dauert es eine Stunde, bis Sie zu AWS oder einem anderen Anbieter wechseln. –

+0

Die vereinbarte Herstellersperre ist vielleicht trivial, aber ich würde trotzdem eine Abstraktionsschicht bevorzugen. – Krullert

Antwort

0

32MB ist keine Einschränkung des BlobStore, sondern fordert Sie dazu auf, Playloads zu Ihrer GAE-App zu senden. Sie können größere Dateien sowohl in Cloud Storage als auch in den BlobStore hochladen, indem Sie eine temporäre URL für den Benutzer erstellen, an die die Datei gesendet werden soll. Diese Datei wird nicht über Ihre App gesendet, sondern direkt an den Speicherdienst gesendet. Sie finden eine Dokumentation dazu für den Blobstore here. Ich verwende Cloud Storage nicht persönlich, daher ist der Link zur Dokumentation nicht hilfreich.

Sie können sicherlich jeden anderen Dienst in ähnlicher Weise verwenden, aber ich fürchte, ich kann nicht erklären, wie anders als zu sagen "konsultieren Sie ihre Dokumentation". Ich weiß, dass das keine gute Antwort auf Ihre Frage ist, aber vielleicht hilft Ihnen ein Einblick in die Funktionsweise der Produkte von Google auch dabei, die Verwendung einer Drittpartei zu verstehen.

Wie für das 60-Sekunden-Anfrage-Limit: Da Ihre Upload-Anfragen sowieso nicht über Ihren Server gehen können, ist dies kein Problem. Die Beschränkung auf 60 Sekunden gilt nur für Anfragen, die direkt an Ihre App gesendet werden.

+0

Diese Antwort zeigt in die richtige Richtung. Für GCS signierte URL-Beispiele siehe https://github.com/voscausa/appengine-gcs-signed-url, was in den Dokumenten nicht offensichtlich ist, weil Google es nur in der XML-API implementiert hat. –

Verwandte Themen