您可以透過下列方式管理佇列和工作:
- 在 Google Cloud 控制台中
- 在終端機或 Cloud Shell 中使用 Google Cloud CLI
- 傳送要求至 Cloud Tasks API
刪除佇列中的工作
如果工作已排定或分派,你可以刪除工作。舉例來說,您可能需要刪除無法順利完成的工作,無論重試多少次都一樣。如果工作已順利完成,或持續失敗並已用盡重試次數,就無法刪除。
主控台
在 Google Cloud 控制台中,依序前往「Cloud Tasks」>「Queues」(佇列) 頁面。
按一下要刪除工作的佇列名稱。
選取要刪除的工作核取方塊。
按一下「刪除工作」圖示 。
在系統的提示訊息中,按一下 [刪除]。
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專案 IDLOCATION:佇列所在的區域,例如us-central1
要求主體必須為空白。
如要傳送要求,請展開以下其中一個選項:
如果成功,回應主體會留白。
清除佇列中的所有工作
您可以清除佇列中的所有工作,系統會永久刪除清除呼叫前建立的所有工作。不過,清除作業最多可能需要一分鐘才會生效,且系統可能會在清除作業生效前指派工作。
主控台
在 Google Cloud 控制台中,依序前往「Cloud Tasks」>「Queues」(佇列) 頁面。
按一下要刪除工作的佇列名稱。
按一下 「清除佇列」。
在提示中按一下「清除」。
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專案 IDLOCATION:佇列部署的區域,例如us-central1
要求主體必須為空白。
如要傳送要求,請展開以下其中一個選項:
如果成功,回應主體會包含 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」>「Queues」(佇列) 頁面。
找到要暫停的佇列,然後勾選對應的核取方塊。
按一下 「暫停佇列」。
在系統的提示訊息中,按一下「暫停」。
如要恢復佇列,請按一下 「恢復佇列」。
gcloud
使用
gcloud tasks queues pause指令暫停佇列:gcloud tasks queues pause QUEUE_ID \ --location=LOCATION
更改下列內容:
QUEUE_ID:要暫停的佇列名稱LOCATION:佇列部署所在的區域,例如us-central1
使用
gcloud tasks queues resume指令繼續佇列:gcloud tasks queues resume QUEUE_ID \ --location=LOCATION
REST
如要暫停佇列,請使用
projects.locations.queues.pause方法。使用任何要求資料之前,請先替換以下項目:
QUEUE_ID:要暫停的佇列名稱PROJECT_ID:您的 Google Cloud專案 IDLOCATION:佇列部署的區域,例如us-central1
要求主體必須為空白。
如要傳送要求,請展開以下其中一個選項:
如果成功,回應主體會包含
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專案 IDLOCATION:佇列部署的區域,例如us-central1
要求主體必須為空白。
如要傳送要求,請展開以下其中一個選項:
如果成功,回應主體會包含
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" }
列出佇列
您可以列出佇列。列出佇列時,系統會傳回部分速率限制和重試參數詳細資料。請注意,下列欄位的作用相同:
- 最高速率 (控制台)、
MAX_RATE(gcloud)、maxDispatchesPerSecond(REST) 最大並行數 (控制台)、
MAX_NUM_OF_TASKS(gcloud)、maxConcurrentDispatches(REST)
主控台
在 Google Cloud 控制台中,依序前往「Cloud Tasks」>「Queues」(佇列) 頁面。
系統會列出 Google Cloud 專案中的所有佇列。
如要查看更多詳細資料,請按一下佇列名稱,然後按一下「設定」分頁標籤。
系統會顯示速率限制和重試參數詳細資料。
gcloud
使用 gcloud tasks queues list 指令列出佇列:
gcloud tasks queues list \ --location=LOCATION
將 LOCATION 替換為佇列部署所在的區域,例如 us-central1。如未指定位置,系統會使用 Google Cloud 專案的 App Engine 應用程式位置 (如有),否則您必須指定位置。
畫面會顯示如下的輸出內容:
QUEUE_NAME: my-queue STATE: PAUSED MAX_NUM_OF_TASKS: 1000 MAX_RATE (/sec): 500.0 MAX_ATTEMPTS: 100 ...
REST
如要列出佇列,請使用 projects.locations.queues.list 方法。
使用任何要求資料之前,請先替換以下項目:
PROJECT_ID:您的 Google Cloud專案 ID。LOCATION:建立佇列的區域,例如us-central1。
如要傳送要求,請展開以下其中一個選項:
如果成功,回應主體會包含 Queue 資源的執行個體,回應內容應類似於下列內容:
{
"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"
}
刪除佇列
你可以刪除佇列。佇列中的所有工作也會一併刪除。刪除佇列後,必須等待 3 天才能重新建立名稱相同的佇列。這段等待時間可避免在刪除或等待執行的工作發生非預期行為。此外,也能避免刪除或重新建立週期時發生內部程序錯誤。
主控台
在 Google Cloud 控制台中,依序前往「Cloud Tasks」>「Queues」(佇列) 頁面。
找到要刪除的佇列,然後勾選對應的核取方塊。
按一下 「刪除佇列」。
在提示中輸入佇列名稱,然後按一下「確認」。
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專案 IDLOCATION:佇列部署的區域,例如us-central1
要求主體必須為空白。
如要傳送要求,請展開以下其中一個選項:
如果成功,回應主體會留白。