管理队列和任务
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
您可以通过以下方式管理队列和任务:
- 在 Google Cloud Console 中
- 在终端或 Cloud Shell 中使用 Google Cloud CLI
- 向 Cloud Tasks API 发送请求
从队列中删除任务
如果任务已安排或调度,您可以将其删除。例如,您可能需要删除无论重试多少次都无法成功完成的任务。如果任务已成功完成,或者在连续失败后已耗尽重试次数,则无法删除该任务。
控制台
在 Google Cloud 控制台中,前往 Cloud Tasks
> 队列页面。
前往“队列”
点击要删除的任务所属队列的名称。
选中要删除的任务对应的复选框。
点击 delete
删除任务。
在弹出的提示中,点击删除。
gcloud
使用 gcloud tasks delete
命令删除任务:
gcloud tasks delete TASK_NAME \
--queue=QUEUE_ID \
--location=LOCATION
替换以下内容:
TASK_NAME
:您要删除的任务的名称
QUEUE_ID
:任务所属队列的名称
LOCATION
:队列的部署区域,例如 us-central1
REST
如需删除任务,请使用 projects.locations.queues.tasks.delete
方法。
在使用任何请求数据之前,请先进行以下替换:
QUEUE_ID
:任务所属队列的名称
TASK_NAME
:要删除的任务的名称
PROJECT_ID
:您的 Google Cloud项目 ID
LOCATION
:队列所在的区域,例如 us-central1
请求正文必须为空。
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
执行以下命令:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudtasks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID/tasks/TASK_NAME"
PowerShell (Windows)
执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://cloudtasks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID/tasks/TASK_NAME" | Select-Object -Expand Content
APIs Explorer(浏览器)
打开方法参考页面。APIs Explorer 面板会在页面右侧打开。您可以与此工具进行交互以发送请求。
填写所有必填字段,然后点击执行。
如果成功,则响应正文为空。
从队列中完全清除所有任务
您可以通过清除队列中的任务来删除所有任务。在完全清除之前创建的所有任务都将被永久删除。不过,完全清除操作最多可能需要一分钟才会生效,并且在完全清除生效之前,系统可能会调度任务。
控制台
在 Google Cloud 控制台中,前往 Cloud Tasks
> 队列页面。
前往“队列”
点击要删除的任务所属队列的名称。
点击 remove_circle_outline
完全清除队列。
在出现的提示中,点击清除。
gcloud
使用 gcloud tasks queues purge
命令清除队列:
gcloud tasks queues purge QUEUE_ID \
--location=LOCATION
替换以下内容:
QUEUE_ID
:您要清除的队列的名称
LOCATION
:队列的部署区域,例如 us-central1
REST
如需清除队列,请使用 projects.locations.queues.purge
方法。
在使用任何请求数据之前,请先进行以下替换:
QUEUE_ID
:您要清除的队列的名称
PROJECT_ID
:您的 Google Cloud项目 ID
LOCATION
:部署队列的区域,例如 us-central1
请求正文必须为空。
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://cloudtasks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID:purge"
PowerShell (Windows)
执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://cloudtasks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID:purge" | Select-Object -Expand Content
APIs Explorer(浏览器)
打开方法参考页面。APIs Explorer 面板会在页面右侧打开。您可以与此工具进行交互以发送请求。
填写所有必填字段,然后点击执行。
如果成功,则响应正文包含一个 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"
}
暂停或恢复队列
您可以暂停或恢复队列。暂停队列意味着停止执行和提交任务。您仍然可以创建任务并将其推送或附加到队列,但系统不会处理这些任务。队列恢复后,系统会按任务添加到队列积压任务的顺序处理所有积压任务。
控制台
在 Google Cloud 控制台中,前往 Cloud Tasks
> 队列页面。
前往“队列”
选中要暂停的队列对应的复选框。
点击 pause
暂停队列。
在弹出的提示中,点击暂停。
如需继续执行队列,请点击 play_arrow
Continue queue(继续执行队列)。
REST
如需暂停队列,请使用 projects.locations.queues.pause
方法。
在使用任何请求数据之前,请先进行以下替换:
QUEUE_ID
:您要暂停的队列的名称
PROJECT_ID
:您的 Google Cloud项目 ID
LOCATION
:部署队列的区域,例如 us-central1
请求正文必须为空。
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://cloudtasks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID:pause"
PowerShell (Windows)
执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://cloudtasks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID:pause" | Select-Object -Expand Content
APIs Explorer(浏览器)
打开方法参考页面。APIs Explorer 面板会在页面右侧打开。您可以与此工具进行交互以发送请求。
填写所有必填字段,然后点击执行。
如果成功,则响应正文包含一个 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"
}
如需继续执行队列,请使用 projects.locations.queues.resume
方法。
在使用任何请求数据之前,请先进行以下替换:
QUEUE_ID
:您要恢复的队列的名称
PROJECT_ID
:您的 Google Cloud项目 ID
LOCATION
:队列的部署区域,例如 us-central1
请求正文必须为空。
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://cloudtasks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID:resume"
PowerShell (Windows)
执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://cloudtasks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID:resume" | Select-Object -Expand Content
APIs Explorer(浏览器)
打开方法参考页面。APIs Explorer 面板会在页面右侧打开。您可以与此工具进行交互以发送请求。
填写所有必填字段,然后点击执行。
如果成功,则响应正文包含一个 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"
}
删除队列
您可以删除队列。队列中的所有任务也会一并删除。如果您删除队列,则必须等待 3 天后,才能使用同一名称重新创建该队列。此等待时间可防止在删除时正在运行或等待运行的任务中发生意外行为。同时可避免删除或重新创建周期中的内部进程失败。
控制台
在 Google Cloud 控制台中,前往 Cloud Tasks
> 队列页面。
前往“队列”
选中要删除的队列对应的复选框。
点击delete
删除队列。
在提示中输入队列名称,然后点击确认。
gcloud
使用 gcloud tasks queues delete
命令删除队列:
gcloud tasks queues delete QUEUE_ID \
--location=LOCATION
替换以下内容:
QUEUE_ID
:您要删除的队列的名称
LOCATION
:队列的部署区域,例如 us-central1
REST
如需删除队列,请使用 projects.locations.queues.delete
方法。
在使用任何请求数据之前,请先进行以下替换:
QUEUE_ID
:要删除的队列的名称
PROJECT_ID
:您的 Google Cloud项目 ID
LOCATION
:部署队列的区域,例如 us-central1
请求正文必须为空。
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
执行以下命令:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://cloudtasks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID"
PowerShell (Windows)
执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://cloudtasks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID" | Select-Object -Expand Content
APIs Explorer(浏览器)
打开方法参考页面。APIs Explorer 面板会在页面右侧打开。您可以与此工具进行交互以发送请求。
填写所有必填字段,然后点击执行。
如果成功,则响应正文为空。
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-04-22。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-04-22。"],[],[]]