9

Ich bin bei der Entscheidung zwischen Google App Engine Standard Vs. Flexible Umgebung für eine reale Produktion. Ich möchte Java definitiv verwenden. Brauchen Sie Firebase (neueste Version) für Authentifizierung und Push-Benachrichtigung; Ich bin mir nicht sicher, ob neue Firebase kompatibel mit Standard oder flexibel ist.Google App Engine Standard- oder flexible Umgebung?

durch den Warnhinweis in den folgenden Link, mein Eindruck ist, dass aktuelle Firebase kompatibel ist nur mit der flexiblen Umgebung.

https://cloud.google.com/solutions/mobile/firebase-app-engine-android-studio

Antwort

6

Alle Dinge gleich ist jede Standardumgebung App auch in einer flexiblen Umgebung mit minimalen App Änderungen ausgeführt werden können. Das Gegenteil ist nicht wahr - die Standardumgebungseinschränkungen sind strenger als diejenigen für die flexible Umgebung (daher die flexible in seinem Namen).

UPDATE: das obige ist nicht korrekt, der sprachspezifische Abschnitt der Migrating an Existing App Engine App Guide sollte überprüft werden, welche Standard-env-APIs explizit als kompatibel oder inkompatibel aufgelistet sind. In einigen Fällen könnte dies die Entscheidung sofort klären. Angenommen, für die verbleibende Antwort bleibt die Auswahl zwischen den Umgebungen nach dieser Prüfung offen.

Also - um loszuwerden - Ich würde zunächst für die Standardumgebung schießen (einfacher einzurichten/zu verwalten und auch potenziell kostenlos, abhängig von der Verwendung der App) und nur entscheiden, flexibel zu wechseln env wenn/wann ich Ein unvermeidbares Problem, das durch eine der Standardumgebungseinschränkungen verursacht wurde und in der Flex-Umgebung kein Problem darstellt. Wenn kein solches Problem auftritt, behalten Sie praktisch die Option, zwischen den beiden Bereitstellungsoptionen nach Belieben zu wechseln.

Wie für Ihren Eindruck von der doc Tutorial - ich denken es unbegründet ist, auf der Grundlage der Costs Abschnitt ...

Sowohl Firebase und App Engine haben freien Ebenen der Nutzung. Wenn Ihre Nutzung dieser Dienste unter den im Firebase freien Plan und dem kostenlosen App Engine-Kontingent angegebenen Grenzwerten liegt, müssen Sie dieses Tutorial nicht tun.

... in Kombination mit dem Pricing Reihe Comparing environments Tisch ...

enter image description here

... als der Standard-env hat eine kostenlose Tag Instance hours Quote aber die Compute Engine Pricing die Machine type billing model verwendet und doesn Keine freie Quote außer the initial limited free trial.

Was mir insgesamt erzählt, dass die Standardumgebung im Tutorial verwendet wird :)

Bestätigt im Configuring the App Engine backend to use manual scaling Abschnitt als der Config-App nicht auf select the flexible environment verwendet <vm>true</vm> Einstellung hat.

+2

Diese Antwort ist veraltet mit den Änderungen aus der flexiblen Umgebung in der Betaversion und unterstützt nicht die gleichen Bibliotheken wie die vorherigen "Managed VMs" mit Standard. – BrettJ

2

Ihre Präferenz sollte App-Engine-Standard-Umgebung für den Augenblick sein, es sei denn, Sie benötigen speziell eine Funktion nur in flexiblen angeboten. Derzeit gibt es nur sehr wenig Dokumentation für die flexible App-Engine, und die Konvertierung fast jeder App von einer in die andere ist KEINE einfache Aufgabe.

Alles, was Sie lesen, sagt "es ist einfach, von Standard zu flexibel zu konvertieren" oder umgekehrt ist von vor 6. Dezember, wenn vm: true veraltet war (zusammen mit allen Kompatibilitätszeiten, die Sie Standardcode verwenden können auf flexible App-Engine). Flexible hat jetzt eigene Bibliotheken für die meisten Dinge, und es ist anders genug, um fast ein komplettes Umschreiben vieler Ihrer Methoden zu erfordern.

Zum Beispiel, als ich meine Cloud Storage Controller zu flexiblen konvertierte, war nicht eine einzige Codezeile über Methodennamen hinaus nützlich, da die neue Bibliothek hauptsächlich Blobs anstelle von StorageObjects verwendet. (java)