Regions-ID
REGION_ID
ist ein abgekürzter Code, den Google anhand der Region zuweist, die Sie beim Erstellen Ihrer Anwendung ausgewählt haben. Der Code bezieht sich nicht auf ein Land oder eine Provinz, auch wenn einige Regions-IDs häufig verwendeten Länder- und Provinzcodes ähneln können. Bei Anwendungen, die nach Februar 2020 erstellt wurden, ist REGION_ID.r
in den App Engine-URLs enthalten. Bei Anwendungen, die vor diesem Datum erstellt wurden, ist die Regions-ID in der URL optional.
Eine App Engine-Anwendung besteht aus einer einzelnen Anwendungsressource, die einen oder mehrere Dienste umfasst. Dabei kann jeder Dienst so konfiguriert werden, dass er unterschiedliche Laufzeiten verwendet und mit unterschiedlichen Leistungseinstellungen arbeitet. Innerhalb eines Dienstes stellen Sie Versionen dieses Dienstes bereit. Je nachdem, für wie viel Traffic Sie eine Version konfiguriert haben, wird diese dann auf einer oder mehreren Instanzen ausgeführt.
Anwendungskomponenten
Beim Anlegen einer Anwendungsressource wird die App Engine-Anwendung in Ihrem Google Cloud-Projekt erstellt. Die App Engine-Anwendung ist ein übergeordneter Container, der die Dienst-, Versions- und Instanzressourcen der Anwendung enthält. Alle Ressourcen für die App Engine-Anwendung werden in der von Ihnen ausgewählten Region erstellt, einschließlich des Anwendungscodes sowie der Einstellungen, Anmeldedaten und Metadaten der Anwendung. Weitere Informationen zu "Anwendungsressourcen“ (Standard|flexibel) und dazu, in welchen Regionen Sie sie erstellen können.
Jede App Engine-Anwendung umfasst mindestens einen Dienst (den Standarddienst default
), der je nach Abrechnungsstatus Ihrer Anwendung viele Versionen enthalten kann.
Weitere Informationen finden Sie unten unter „Limits“.
Das folgende Diagramm veranschaulicht die Hierarchie einer App Engine-Anwendung, die mit mehreren Diensten ausgeführt wird. Die Anwendung in diesem Diagramm umfasst zwei Dienste, die jeweils mehrere Versionen enthalten. Zwei dieser Versionen werden aktiv auf mehreren Instanzen ausgeführt:
Andere Google Cloud-Dienste wie Datastore werden in der App Engine-Anwendung gemeinsam genutzt. Weitere Informationen finden Sie unter: "Webdienste strukturieren" (Standard|flexibel).
Dienste
Große Anwendungen lassen sich in App Engine mithilfe von Diensten in logische Komponenten aufteilen, die App Engine-Funktionen sicher gemeinsam nutzen und miteinander kommunizieren können. Normalerweise verhalten sich App Engine-Dienste wie Mikrodienste. Sie können eine gesamte Anwendung also in einem einzigen Dienst ausführen oder mehrere Dienste entwickeln und bereitstellen, sodass sie als eine Gruppe von Mikrodiensten ausgeführt werden.
Eine Anwendung, die Kundenanfragen verarbeitet, kann also mehrere separate Dienste für verschiedene Aufgaben enthalten, z. B. jeweils einen Dienst für:
- API-Anfragen von Mobilgeräten
- Interne Verwaltungsanfragen
- Backend-Verarbeitung wie Abrechnungspipelines und Datenanalyse
Jeder Dienst in App Engine besteht aus dem Quellcode der Anwendung und den entsprechenden App Engine-Konfigurationsdateien. Die Dateien, die Sie für einen Dienst bereitstellen, bilden eine einzelne Version dieses Dienstes. Bei jeder weiteren Bereitstellung für diesen Dienst erstellen Sie zusätzliche Versionen innerhalb desselben Dienstes.
Versionen
Bei mehreren Versionen einer Anwendung in einem Dienst können Sie für Rollbacks, Tests oder andere temporäre Ereignisse mühelos zwischen den verschiedenen Versionen dieser Anwendung wechseln. Sie können den gesamten Traffic zu einer bestimmten Version Ihrer Anwendung weiterleiten. Dazu müssen Sie den "Traffic migrieren" (Standard|flexibel) oder an mehrere Versionen der Anwendung weiterleiten, wozu Sie den Traffic aufteilen “(Standard|flexibel).
Instanzen
Die Versionen in Ihren Diensten werden in einer oder mehreren Instanzen ausgeführt. Standardmäßig skaliert App Engine die Anwendung entsprechend der Arbeitslast. Die Anwendungen skalieren die Anzahl der ausgeführten Instanzen, sodass eine konsistente Leistung erzielt, die Anzahl von inaktiven Instanzen minimiert und die Kosten reduziert werden. Weitere Informationen zu Instanzen finden Sie unter "Instanzverwaltung" (Standard|flexibel).
In der flexiblen App Engine-Umgebung werden Instanzen von Compute Engine-Ressourcen unterstützt. Einige der Ressourcen, die von Instanzen in der flexiblen App Engine-Umgebung verwendet werden, z. B. Laufwerk, CPU und Arbeitsspeicher, werden auf die Compute Engine API-Kontingente Ihres Projekts angerechnet. Weitere Informationen zur Verwendung von Compute Engine-Ressourcen in App Engine finden Sie in der Übersicht zur flexiblen App Engine-Umgebung.
Anwendungsanfragen
Alle Dienste der Anwendung und jede Version in diesen Diensten müssen einen eindeutigen Namen haben. Mit diesen Namen können Sie dann Traffic über URLs an bestimmte Ressourcen weiterleiten. Beispiel:
https://VERSION-dot-SERVICE-dot-PROJECT_ID.REGION_ID.r.appspot.com
Eingehende Nutzeranfragen werden an die Dienste oder Versionen weitergeleitet, die für die Verarbeitung von Traffic konfiguriert sind. Sie können Anfragen auch direkt an bestimmte Dienste und Versionen weiterleiten. Weitere Informationen finden Sie unter: "Kommunikation zwischen Diensten" (Standard|flexibel).
Anwendungsanfragen loggen
Wenn die Anwendung eine Anfrage verarbeitet, kann sie auch eigene Logging-Nachrichten in stdout
und stderr
schreiben.
Weitere Informationen zu den Anwendungslogs finden Sie unter "Anwendungslogs schreiben“ (Standard|flexibel).
Limits
Sowohl für die flexible Umgebung als auch für die Standardumgebung gelten für Dienste und Versionen die gleichen Limits. Wenn Sie in einer Anwendung beispielsweise Standardversionen und flexible Versionen haben, werden diese Versionen auf das gleiche Limit angerechnet. Weitere Informationen finden Sie unter "Kontingente und Limits" (Standard|Flexibel).