您可以透過下列方式管理佇列和工作:
- 在 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
要求主體必須為空白。
如要傳送要求,請展開以下其中一個選項:
如果成功,回應主體會留白。