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.
Mit der Konfigurationsdatei queue.yaml
werden fast alle Aufgabenwarteschlangen erstellt und konfiguriert (Push), die Ihre Anwendung verwendet. Alle App Engine-Anwendungen enthalten eine automatisch vorkonfigurierte Push-Warteschlange mit dem Namen default
. Obwohl Sie die Warteschlange default
nicht selbst erstellen, können Sie mithilfe der Datei queue.yaml
andere Warteschlangen hinzufügen oder die Konfiguration der Warteschlange default
ändern.
Zum Konfigurieren von Push-Warteschlangen können Sie entweder die Methode queue.yaml
oder die Warteschlangenverwaltung von Cloud Tasks verwenden, aber nicht gleichzeitig. Die Kombination der Uploadmethode queue.yaml
mit den Methoden zur Warteschlangenverwaltung kann zu unerwarteten Ergebnissen führen und wird nicht empfohlen.
Beispiel
Das folgende grundlegende Beispiel definiert eine benannte Warteschlange und überschreibt die Standardverarbeitungsrate:
queue:
- name: my-push-queue
rate: 1/s
Im Folgenden sehen Sie ein komplexeres Beispiel für eine queue.yaml
-Konfiguration, die das Einrichten der Anzahl der Aufgabenversuche und das Ändern der Standardverarbeitungsrate veranschaulicht.
queue:
- name: fooqueue
rate: 1/s
retry_parameters:
task_retry_limit: 7
task_age_limit: 2d
- name: barqueue
rate: 1/s
retry_parameters:
min_backoff_seconds: 10
max_backoff_seconds: 200
max_doublings: 0
- name: bazqueue
rate: 1/s
retry_parameters:
min_backoff_seconds: 10
max_backoff_seconds: 200
max_doublings: 3
Syntax
Die Datei queue.yaml
ist eine YAML-Datei, deren Stammanweisung queue
lautet.
Diese Anweisung enthält null oder mehr benannte Warteschlangen. In jeder Warteschlangendefinition können die folgenden Elemente angegeben sein:
Element | Beschreibung |
---|---|
bucket_size Push-Warteschlangen |
Optional: Eine Aufgabenwarteschlange steuert die Ausführungsrate von Aufgaben mit dem Token-Bucket-Algorithmus. Jede benannte Warteschlange hat einen Token-Bucket mit Tokens, deren maximale Anzahl durch den Wert von bucket_size angegeben wird. Bei jeder Ausführung einer Aufgabe durch die Anwendung wird ein Token aus dem Bucket entnommen. Die Verarbeitung der Aufgaben in der Warteschlange wird fortgesetzt, bis keine Tokens mehr im Bucket der Warteschlange vorhanden sind. App Engine füllt den Bucket auf der Basis der Rate, die Sie für die Warteschlange angegeben haben, kontinuierlich mit neuen Tokens auf. Wenn die Warteschlange viele Aufgaben enthält und die Rate hoch ist, wird die Verarbeitungsgeschwindigkeit der Warteschlange von der Bucket-Größe beschränkt. Der maximale Wert für die Bucket-Größe beträgt 500. So können Sie eine hohe Rate festlegen, damit eine Aufgabe sofort nach Einreihung in der Warteschlange verarbeitet wird, gleichzeitig jedoch die Ressourcennutzung beschränken, wenn viele Aufgaben innerhalb eines kurzen Zeitraums in die Warteschlange eingereiht werden. Wenn Sie für eine Warteschlange keinen Wert für bucket_size festlegen, beträgt der Standardwert 5. Wir empfehlen, einen größeren Wert anzugeben, da die Standardgröße für viele Anwendungsfälle eventuell zu klein ist. Sie können beispielsweise die Bucket-Größe anhand der Verarbeitungsrate ermitteln. Weitere Informationen zu diesem Element finden Sie in der vergleichenden Beschreibung von |
max_concurrent_requests Push-Warteschlangen |
Optional Legt die maximale Anzahl von Aufgaben fest, die in der angegebenen Warteschlange gleichzeitig ausgeführt werden können. Bei dem Wert handelt es sich um eine ganze Zahl. Das Limit liegt standardmäßig bei 1.000 Aufgaben pro Warteschlange. Die empfohlene Obergrenze liegt bei 5.000 Aufgaben pro Warteschlange. Beachten Sie, dass die Warteschlangen möglicherweise langsam anlaufen, wenn sie neu erstellt oder längere Zeit nicht verwendet wurden. Durch Beschränkung der Anzahl gleichzeitig ausgeführter Aufgaben können Sie die Ausführungsrate der Warteschlange besser kontrollieren und verhindern, dass zu viele Aufgaben gleichzeitig ausgeführt werden. Außerdem lassen sich damit Konflikte im Datenspeicher vermeiden und Ressourcen für andere Warteschlangen oder für die Onlineverarbeitung verfügbar machen. Weitere Informationen zu diesem Element finden Sie in der vergleichenden Beschreibung von |
name |
Erforderlich Der Name der Warteschlange. Ein Warteschlangenname kann Groß- und Kleinbuchstaben, Zahlen und Bindestriche enthalten. Warteschlangennamen dürfen maximal 100 Zeichen lang sein.
Alle Anwendungen haben eine Push-Warteschlange mit dem Namen "default". Bei dieser Warteschlange ist eine Rate von 5 Aufgaben pro Sekunde voreingestellt. Beachten Sie, dass diese Standardwarteschlange erst in der Google Cloud Console angezeigt wird, wenn sie zum ersten Mal verwendet oder konfiguriert wird.
Sie können die Standardwarteschlange konfigurieren und damit die Standardrate ändern. Dazu definieren Sie eine Warteschlange mit dem Namen "default" in der Datei |
rate Push-Warteschlangen |
Erforderlich
Die Häufigkeit, mit der Aufgaben in dieser Warteschlange verarbeitet werden. Der Wert ist eine Zahl, nach der ein Schrägstrich und eine Zeiteinheit folgen: Wenn die Zahl Weitere Informationen zu diesem Element finden Sie in der vergleichenden Beschreibung von |
retry_parameters |
Optional Konfiguriert Wiederholungsversuche für fehlgeschlagene Aufgaben in Push-Warteschlangen. Durch diese Ergänzung können Sie die maximale Anzahl an erneuten Versuchen für nicht ausgeführte Aufgaben in einer bestimmten Warteschlange angeben. Sie können auch ein Zeitlimit für Wiederholungsversuche festlegen und den Zeitabstand zwischen den Versuchen steuern. Die Wiederholungsparameter können folgende Unterelemente enthalten:
|
target Push-Warteschlangen |
Optional Ein String mit dem Namen eines Dienstes/einer Version, einer Frontend-Version oder eines Back-Ends für die Ausführung aller Aufgaben in der jeweiligen Warteschlange. Der Standardwert ist ein leerer String.
Der String wird beim Erstellen der HTTP-Anfrage für eine Aufgabe dem Domainnamen der Anwendung vorangestellt. Beispiel: Wenn Ihre Anwendungs-ID Wird kein Ziel angegeben, werden Aufgaben in der gleichen Version der Anwendung aufgerufen, aus der sie in die Warteschlange gestellt wurden. Wenn Sie also eine Aufgabe aus der Standardversion der Anwendung in die Warteschlange stellen, ohne ein Ziel für die Warteschlange anzugeben, wird die Aufgabe in der Standardversion der Anwendung aufgerufen. Wenn sich die Standardversion der Anwendung zwischen dem Zeitpunkt, an dem die Aufgabe in die Warteschlange gestellt wurde, und dem Zeitpunkt ihrer Ausführung ändert, wird die Aufgabe in der neuen Standardversion ausgeführt. Wenn Sie Dienste zusammen mit einer Weiterleitungsdatei verwenden, kann die HTTP-Anfrage der Aufgabe abgefangen und an einen anderen Dienst weitergeleitet werden. |
Folgende Elemente können für alle Warteschlangen in einer Anwendung angegeben werden:
Element | Beschreibung |
---|
Konfigurationsdatei für Warteschlangen erstellen
Die Dateiqueue.yaml
sollte sich im Stammverzeichnis oder im Verzeichnis befinden, das den Standarddienst definiert.
Mit dem folgenden Befehl stellen Sie die Warteschlangen-Konfigurationsdatei bereit:
gcloud app deploy queue.yaml
Warteschlangen löschen
So löschen Sie eine Warteschlange:
Entfernen Sie die Warteschlangendefinition aus der Datei
queue.yaml
.Laden Sie die Änderung in Ihre
queue.yaml
-Datei hoch.gcloud app deploy queue.yaml
Löschen Sie die Warteschlange in der Google Cloud Console, wählen Sie die Warteschlange aus und klicken Sie auf Warteschlange löschen:
Wenn Sie eine Warteschlange über die Google Cloud Console löschen, können Sie erst nach sieben Tagen eine Warteschlange mit dem gleichen Namen erstellen.