從工作佇列遷移至 Cloud Tasks

您可以不再繼續透過 App Engine Standard SDK 使用 App Engine 標準環境的佇列服務 (工作佇列),改為使用 Cloud Tasks 這個新的 RPC/REST API 來存取相同服務。Cloud Tasks 可以在第一代 App Engine 執行階段以外的環境中使用,特別是 App Engine 彈性環境以及第二代 App Engine 標準環境執行階段

Cloud Tasks 與最新的 App Engine 標準環境工作佇列服務能夠並行使用。您可以透過任一 API 將其新增/執行於相同佇列。在這兩種情況下,佇列都為應用程式所有。無論您是使用 App Engine SDK 或新的 Cloud Tasks API,應用程式內的佇列都會將工作轉送到處理常式 URL 以進行非同步處理。

新功能

Cloud Tasks 提供無法透過 App Engine SDK 取得的部分功能,包括:

  • 透過 API 進行佇列管理:

    您可以使用 API、透過主控台或透過 gcloud 指令建立、刪除、暫停及執行其他佇列管理工作。

  • 列出佇列指令:

    您可以列出已在專案中設定的所有佇列。

  • 列出工作指令:

    您可以列出任何佇列中的所有工作。

  • 身分與存取權管理整合:

    您可以使用 Google Cloud Identity and Access Management (IAM),以高度精細的方式安全存取佇列和工作。

目前還無法透過 Cloud Tasks API 取得的工作佇列功能:

  • 提取佇列

    您可以使用 GA 產品 Cloud Pub/Sub 來實作與提取佇列相同的各個使用案例。

  • 交易工作

    Cloud Tasks 不支援將工作排入佇列做為 Cloud Datastore 交易的一部分,因此只有在交易修訂成功時,工作才會排入佇列,也只有在此時,工作才會保證排入佇列。

  • 延遲工作

    在部分情況下,您可能需要以非同步方式處理各種不同的小型工作,但同時又想省去個別設定處理常式的麻煩,此時就可以透過 App Engine SDK 使用特定執行階段專用的程式庫,建立可以用來管理這些工作的簡單函式。Cloud Tasks 並未提供這個功能。但您「可以」使用 Cloud Tasks 將這些一般工作安排於日後執行。

  • 命名空間

    部分使用 App Engine SDK 的執行階段含有可透過命名空間支援工作多租戶架構的 API,不過 Cloud Tasks 並未提供這項功能。

  • 本機模擬器

    Cloud SDK 或 App Engine SDK 提供的本機開發伺服器不支援 Cloud Tasks API 呼叫的模擬端點。

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Cloud Tasks 說明文件