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.
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 dazu finden Sie unter Webdienste strukturieren.
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. Der Traffic lässt sich migrieren oder aufteilen und so an eine oder mehrere bestimmte Versionen der Anwendung weiterleiten.
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.
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
Beachten Sie, dass bei der kombinierten Länge von VERSION-dot-SERVICE-dot-PROJECT_ID
, wobei VERSION
der Name Ihrer Version, SERVICE
der Name des Dienstes und PROJECT_ID
Ihre Projekt-ID ist, die maximal 63 Zeichen lang sein und nicht mit einem Bindestrich beginnen oder enden darf. Wenn die kombinierte Länge mehr als 63 Zeichen beträgt, wird möglicherweise Fehler DNS address could not be
found.
angezeigt.
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.
Anwendungsanfragen protokollieren
Wenn die Anwendung eine Anfrage verarbeitet, kann sie auch eigene Loggingnachrichten in stdout
und stderr
schreiben. Ausführliche Informationen zu Anwendungslogs finden Sie unter Anwendungslogs schreiben.
Limits
Die maximale Anzahl von Diensten und Versionen, die bereitgestellt werden kann, hängt von der Preisgestaltung Ihrer Anwendung ab:Limit | Kostenlose Anwendung | Kostenpflichtige Anwendung |
---|---|---|
Maximale Anzahl von Diensten pro Anwendung | 5 | 210 |
Maximale Anzahl von Versionen pro Anwendung | 15 | 210 |
Es besteht außerdem ein Limit für die Anzahl von Instanzen für jeden Dienst mit einfacher oder manueller Skalierung:
Maximale Anzahl von Instanzen pro manuell bzw. einfach skalierter Version | ||
---|---|---|
Kostenlose Anwendung | Kostenpflichtige Anwendung USA | Kostenpflichtige Anwendung EU |
20 | 25 (200 für us-central ) |
25 |
Auch die Anzahl der Zeichen in der URL Ihrer Anwendung ist begrenzt.
Beschreibung | Limit |
---|---|
Maximale Zeichen im Projekt-URL für die URL VERSION-dot-SERVICE-dot-PROJECT_ID |
63 |