Mit Cloud Tasks können Sie die asynchrone Arbeitslastausführung steuern, die Verarbeitung von Warteschlangen pausieren und Fehler in aktiven Aufgabenabläufen beheben. Sie können Ihre Warteschlangen und Aufgaben mit der Google Cloud Console, der Google Cloud CLI oder der Cloud Tasks API konfigurieren und verwalten.
Hinweis
- Prüfen Sie, ob eine Cloud Tasks-Warteschlange vorhanden ist. Weitere Informationen finden Sie unter Cloud Tasks-Aufgabenwarteschlangen erstellen.
- Sie benötigen die erforderlichen IAM-Rollen (Identity and Access Management), um Warteschlangen und Aufgaben zu verwalten, z. B. Cloud Tasks-Administrator (
roles/cloudtasks.admin), Cloud Tasks-Warteschlangenadministrator (roles/cloudtasks.queueAdmin) oder Cloud Tasks-Aufgabenlöschberechtigter (roles/cloudtasks.taskDeleter).
Aufgabe aus einer Warteschlange löschen
Sie können eine Aufgabe löschen, wenn sie geplant oder gesendet wurde. Das Löschen einer Aufgabe ist mitunter erforderlich, wenn sie trotz wiederholter Versuche nicht erfolgreich abgeschlossen werden kann. Sie können eine Aufgabe nicht löschen, wenn sie erfolgreich abgeschlossen wurde oder wenn sie nach wiederholten Fehlern keine Wiederholungsversuche mehr hat. Eine Aufgabe wird automatisch gelöscht, wenn das Limit für die maximale Aufbewahrungsdauer von Aufgaben erreicht ist.
Console
Rufen Sie in der Google Cloud Console die Seite Cloud Tasks > Warteschlangen auf.
Klicken Sie auf den Namen der Warteschlange für die Aufgabe, die Sie löschen möchten.
Klicken Sie auf das Kästchen neben der Aufgabe, die Sie löschen möchten.
Klicken Sie auf Aufgabe löschen.
Klicken Sie dann noch einmal auf Löschen.
gcloud
Löschen Sie eine Aufgabe mit dem Befehl gcloud tasks delete:
gcloud tasks delete TASK_NAME \ --queue=QUEUE_ID \ --location=LOCATION
Ersetzen Sie Folgendes:
TASK_NAME: die ID oder der vollständige Ressourcenname der Aufgabe, die Sie löschen möchtenQUEUE_ID: der Name der Warteschlange, zu der die Aufgabe gehörtLOCATION: die Region, in der die Warteschlange bereitgestellt wird, z. B.us-central1
REST
Verwenden Sie zum Löschen einer Aufgabe die Methode projects.locations.queues.tasks.delete.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
QUEUE_ID: der Name der Warteschlange, zu der die Aufgabe gehörtTASK_NAME: der Name der Aufgabe, die Sie löschen möchtenPROJECT_ID: Ihre Projekt-ID in Google CloudLOCATION: die Region, in der die Warteschlange vorhanden ist, z. B.us-central1
Der Anfragetext muss leer sein.
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Wenn der Vorgang erfolgreich ist, ist der Antworttext leer.
Batch von Aufgaben aus einer Warteschlange löschen
Sie können einen Batch von Aufgaben aus einer Warteschlange löschen, indem Sie die Methode projects.locations.queues.tasks.batchDelete verwenden, um eine Liste von Aufgabennamen zu löschen.
Wichtige Hinweise:
Alle Aufgaben müssen aus derselben Warteschlange gelöscht werden.
Die Anzahl der Aufgaben, die in einem einzelnen Batch gelöscht werden können, ist begrenzt. Weitere Informationen finden Sie unter Kontingente und Limits.
Batchanfragen, bei denen einzelne Vorgänge in einer einzigen Anfrage zusammengefasst werden, sind nicht atomar, da einige der im Batch enthaltenen Vorgänge fehlschlagen können, während andere erfolgreich sein können.
Sie können eine Aufgabe nur löschen, wenn sie geplant oder gesendet wurde. Sie können eine Aufgabe nicht löschen, wenn sie erfolgreich abgeschlossen wurde oder wenn sie nach wiederholten Fehlern keine Wiederholungsversuche mehr hat. Eine Aufgabe wird automatisch gelöscht, wenn das Limit für die maximale Aufbewahrungsdauer erreicht ist.
Sie können auch einen Batch von Aufgaben erstellen. Weitere Informationen finden Sie unter Batch von Aufgaben erstellen.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
TASK_NAME: der Name der zu löschenden Aufgaben im folgenden Format:projects/PROJECT_ID/locations/REGION/queues/QUEUE_ID/tasks/TASK_IDPROJECT_ID: Ihre Projekt-ID in Google CloudREGION: die Region, in der die Warteschlange vorhanden ist, z. B.us-central1QUEUE_ID: der Name der Warteschlange, zu der die Aufgaben gehören
Der Anfragetext enthält eine Liste von Aufgabennamen.
JSON-Text der Anfrage:
{
"names": [
"TASK_NAME"
]
}
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Operation.
{
"name": "projects/PROJECT_ID/locations/REGION/operations/OPERATION_ID",
"metadata": {
"@type": "type.googleapis.com/google.cloud.tasks.v2.BatchDeleteTasksMetadata"
},
"done": false
}
Alle Aufgaben aus einer Warteschlange löschen
Sie können alle Aufgaben aus einer Warteschlange löschen, indem Sie sie dauerhaft löschen. Alle Aufgaben, die vor dem Löschaufruf erstellt wurden, werden endgültig gelöscht. Es kann jedoch bis zu einer Minute dauern, bis Löschvorgänge wirksam werden. Aufgaben können also vor dem Löschen gesendet werden.
Console
Rufen Sie in der Google Cloud Console die Seite Cloud Tasks > Warteschlangen auf.
Klicken Sie auf den Namen der Warteschlange für die Aufgaben, die Sie löschen möchten.
Klicken Sie auf Warteschlange löschen.
Klicken Sie in der Eingabeaufforderung auf Löschen.
gcloud
Löschen Sie eine Warteschlange mit dem Befehl gcloud tasks queues purge:
gcloud tasks queues purge QUEUE_ID \ --location=LOCATION
Ersetzen Sie Folgendes:
QUEUE_ID: der Name der Warteschlange, die Sie löschen möchtenLOCATION: die Region, in der die Warteschlange bereitgestellt wird, z. B.us-central1
REST
Verwenden Sie die Methode projects.locations.queues.purge, um eine Warteschlange dauerhaft zu löschen.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
QUEUE_ID: der Name der Warteschlange, die Sie löschen möchtenPROJECT_ID: Ihre Projekt-ID in Google CloudLOCATION: die Region, in der die Warteschlange bereitgestellt wird, z. B.us-central1
Der Anfragetext muss leer sein.
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von Queue:
{
"name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID",
"rateLimits": {
"maxDispatchesPerSecond": 500,
"maxBurstSize": 100,
"maxConcurrentDispatches": 1000
},
"retryConfig": {
"maxAttempts": 100,
"minBackoff": "0.100s",
"maxBackoff": "3600s",
"maxDoublings": 16
},
"state": "RUNNING",
"purgeTime": "2025-03-28T13:06:30.110255Z"
}
Warteschlangen pausieren oder fortsetzen
Sie können eine Warteschlange pausieren oder fortsetzen. Durch das Pausieren einer Warteschlange wird die Ausführung und Bereitstellung von Aufgaben angehalten. Sie können weiterhin Aufgaben erstellen und sie in die Warteschlange verschieben oder an sie anhängen. Die Aufgaben werden jedoch erst verarbeitet, wenn die Warteschlange fortgesetzt wird. Wenn Sie eine Warteschlange fortsetzen, beginnt Cloud Tasks mit dem Senden von Aufgaben im Rückstand ohne definierte Ausführungsreihenfolge. Wenn Sie Warteschlangen mit hohem Traffic und großem Rückstand fortsetzen, folgen Sie der Anleitung zum Hochfahren, um eine Überlastung des Ziels zu vermeiden.
Console
Rufen Sie in der Google Cloud Console die Seite Cloud Tasks > Warteschlangen auf.
Klicken Sie das Kästchen für die Warteschlange an, die Sie pausieren oder fortsetzen möchten.
Klicken Sie auf Warteschlange pausieren und dann bei der Eingabeaufforderung auf Pausieren, um die Warteschlange zu pausieren.
Klicken Sie auf Warteschlange fortsetzen, um eine pausierte Warteschlange fortzusetzen.
gcloud
Pausieren Sie eine Warteschlange mit dem Befehl
gcloud tasks queues pause:gcloud tasks queues pause QUEUE_ID \ --location=LOCATION
Ersetzen Sie Folgendes:
QUEUE_ID: der Name der Warteschlange, die Sie pausieren möchtenLOCATION: die Region, in der die Warteschlange bereitgestellt wird, z. B.us-central1
Setzen Sie eine Warteschlange mit dem Befehl
gcloud tasks queues resumefort:gcloud tasks queues resume QUEUE_ID \ --location=LOCATION
REST
Verwenden Sie zum Pausieren einer Warteschlange die Methode
projects.locations.queues.pause.Ersetzen Sie diese Werte in den folgenden Anfragedaten:
QUEUE_ID: der Name der Warteschlange, die Sie pausieren möchtenPROJECT_ID: Ihre Projekt-ID in Google CloudLOCATION: die Region, in der die Warteschlange bereitgestellt wird, z. B.us-central1
Der Anfragetext muss leer sein.
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von
Queue:{ "name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID", "rateLimits": { "maxDispatchesPerSecond": 500, "maxBurstSize": 100, "maxConcurrentDispatches": 1000 }, "retryConfig": { "maxAttempts": 100, "minBackoff": "0.100s", "maxBackoff": "3600s", "maxDoublings": 16 }, "state": "PAUSED" }Verwenden Sie die Methode
projects.locations.queues.resume, um eine Warteschlange fortzusetzen.Ersetzen Sie diese Werte in den folgenden Anfragedaten:
QUEUE_ID: der Name der Warteschlange, die Sie fortsetzen möchtenPROJECT_ID: Ihre Projekt-ID in Google CloudLOCATION: die Region, in der die Warteschlange bereitgestellt wird, z. B.us-central1
Der Anfragetext muss leer sein.
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Wenn der Vorgang erfolgreich abgeschlossen wurde, enthält der Antworttext eine Instanz von
Queue:{ "name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID", "rateLimits": { "maxDispatchesPerSecond": 500, "maxBurstSize": 100, "maxConcurrentDispatches": 1000 }, "retryConfig": { "maxAttempts": 100, "minBackoff": "0.100s", "maxBackoff": "3600s", "maxDoublings": 16 }, "state": "RUNNING" }
Warteschlangen auflisten
Sie können Warteschlangen auflisten. Beim Auflisten von Warteschlangen werden einige Details zu Ratenbegrenzungen und Wiederholungsparametern zurückgegeben. Die folgenden Felder sind äquivalent:
- Max. Rate (Console),
MAX_RATE(gcloud),maxDispatchesPerSecond(REST) Maximal gleichzeitig (Console),
MAX_NUM_OF_TASKS(gcloud),maxConcurrentDispatches(REST)
Console
Rufen Sie in der Google Cloud Console die Seite Cloud Tasks > Warteschlangen auf.
Alle Warteschlangen in Ihrem Projekt Google Cloud werden aufgelistet.
Wenn Sie weitere Details sehen möchten, klicken Sie auf den Namen einer Warteschlange und dann auf den Tab Konfiguration.
Details zur Ratenbegrenzung und zu Wiederholungsparametern werden angezeigt.
gcloud
Listen Sie Warteschlangen mit dem Befehl gcloud tasks queues list auf:
gcloud tasks queues list \ --location=LOCATION
Ersetzen Sie LOCATION durch die Region, in der die Warteschlange bereitgestellt wird, z. B. us-central1. Wenn kein Standort angegeben ist, wird der Standort der App Engine-Anwendung Ihres Google Cloud -Projekts verwendet, sofern vorhanden. Andernfalls müssen Sie einen Standort angeben.
Die Ausgabe sollte in etwa so aussehen:
QUEUE_NAME: my-queue STATE: PAUSED MAX_NUM_OF_TASKS: 1000 MAX_RATE (/sec): 500.0 MAX_ATTEMPTS: 100 ...
REST
Verwenden Sie die Methode projects.locations.queues.list, um Warteschlangen aufzulisten.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
PROJECT_ID: Ihre Google Cloud-Projekt-ID.LOCATION: die Region, in der die Warteschlangen erstellt werden, z. B.us-central1.
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Wenn der Vorgang erfolgreich ist, enthält der Antworttext Instanzen von Queue-Ressourcen und die Antwort sollte in etwa so aussehen:
{
"queues": [
{
"name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID",
"rateLimits": {
"maxDispatchesPerSecond": 500,
"maxBurstSize": 100,
"maxConcurrentDispatches": 1000
},
"retryConfig": {
"maxAttempts": 100,
"minBackoff": "0.100s",
"maxBackoff": "3600s",
"maxDoublings": 16
},
"state": "PAUSED",
"purgeTime": "2025-03-28T13:37:32.292552Z"
},
...
],
"nextPageToken": "CjQKCHppcHBlcjIAEgwI9-GExAYQ_oDc1AMaGioLeWlrZXMtYWdhaW4yC3VzLWNlbnRyYWwx"
}
Warteschlangen löschen
Sie können jede Warteschlange löschen, die Sie nicht mehr benötigen, mit Ausnahme der App Engine-default-Warteschlange.
Nachdem Sie eine Warteschlange gelöscht haben, müssen Sie drei Tage warten, bevor Sie sie mit demselben Namen neu erstellen können. Diese Wartezeit gilt für Warteschlangen, die über eine beliebige Schnittstelle gelöscht wurden, einschließlich der Google Cloud Console, der gcloud CLI, der REST oder RPC API oder Terraform. Dadurch wird unerwartetes Verhalten bei Aufgaben verhindert, die zum Zeitpunkt des Löschens ausgeführt werden, und interne Prozessfehler während des Lösch- und Neuerstellungszyklus werden vermieden.
Während dieses Tombstone-Fensters von bis zu 3 Tagen kann es so aussehen, als ob eine Anfrage zum Erstellen einer Warteschlange erfolgreich war, ohne dass die Warteschlange neu erstellt wurde. Wenn Sie prüfen möchten, ob eine Warteschlange mit demselben Namen neu erstellt wurde, rufen Sie die Warteschlange mit dem Befehl gcloud tasks queues describe oder der Methode projects.locations.queues.get ab. Eine erfolgreiche Antwort (200 OK) bestätigt, dass die Warteschlange neu erstellt wurde.
Wenn Sie Aufgaben löschen, Warteschlangenkonfigurationen ändern oder Warteschlangen in CI/CD-Pipelines verwalten möchten, ohne die Warteschlange zu verlieren oder die dreitägige Wartezeit auszulösen, verwenden Sie die folgenden Alternativen, anstatt eine Warteschlange zu löschen und neu zu erstellen:
Warteschlange dauerhaft löschen: Löschen Sie alle Aufgaben in der Warteschlange, während die Warteschlange aktiv bleibt. Dazu löschen Sie alle Aufgaben dauerhaft aus der Warteschlange. Verwenden Sie dazu den Befehl
gcloud tasks queues purgeoder die Methodeprojects.locations.queues.purge.Warteschlange direkt aktualisieren: Ändern Sie die Ratenbegrenzungen, Wiederholungsparameter oder das Routing für die vorhandene Warteschlange mit dem Befehl
gcloud tasks queues updateoder der Methodeprojects.locations.queues.patch. Weitere Informationen finden Sie unter Warteschlangenrouting, Limits und Wiederholungsversuche konfigurieren.Warteschlange pausieren: Sie können die Aufgabenverteilung vorübergehend beenden, während die Aufgaben in der Warteschlange beibehalten werden. Dazu pausieren Sie die Warteschlange mit dem Befehl
gcloud tasks queues pauseoder der Methodeprojects.locations.queues.pause.Lebenszyklus-Schutzmaßnahmen konfigurieren: Verhindern Sie das versehentliche Löschen von Warteschlangen während automatisierter Bereitstellungen, indem Sie den Löschschutz in Ihren „Infrastruktur als Code“-Vorlagen konfigurieren, z. B. durch Festlegen von
prevent_destroy = truein einem Terraform-lifecycle-Block.
Verwenden Sie zum Löschen einer Warteschlange die Google Cloud Console, die gcloud CLI oder die Cloud Tasks API:
Console
Rufen Sie in der Google Cloud Console die Seite Cloud Tasks > Warteschlangen auf.
Klicken Sie auf das Kästchen neben der Warteschlange, die Sie löschen möchten.
Klicken Sie auf Warteschlange löschen.
Geben Sie bei der Aufforderung den Namen der Warteschlange ein und klicken Sie dann auf Bestätigen.
gcloud
Löschen Sie eine Warteschlange mit dem Befehl gcloud tasks queues delete:
gcloud tasks queues delete QUEUE_ID \ --location=LOCATION
Ersetzen Sie Folgendes:
QUEUE_ID: die ID oder die voll qualifizierte Kennzeichnung der Warteschlange, die Sie löschen möchtenLOCATION: die Region, in der die Warteschlange bereitgestellt wird, z. B.us-central1
Die gcloud CLI fordert Sie vor dem Löschen der Warteschlange zur Bestätigung auf, es sei denn, Sie übergeben das Flag --quiet.
REST
Wenn Sie eine Warteschlange löschen möchten, verwenden Sie die Methode projects.locations.queues.delete.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
QUEUE_ID: der Name der Warteschlange, die Sie löschen möchtenPROJECT_ID: Ihre Projekt-ID in Google CloudLOCATION: die Region, in der die Warteschlange bereitgestellt wird, z. B.us-central1
Der Anfragetext muss leer sein.
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Wenn der Vorgang erfolgreich ist, ist der Antworttext leer.