您可以在创建 Cloud Tasks 队列时或之后的任何时间配置该队列。该配置将应用于相应队列中的所有任务。
配置队列需要注意三个基本方面:
配置队列级路由
在队列级别配置的路由会覆盖在任务级别设置的路由。 如果您想将 Cloud Tasks 用作目标服务前面的缓冲区,或者需要更改队列中所有任务的路由,则此方法非常有用。
队列级路由适用于:
- 队列中的任务
- 在设置队列级路由后添加到队列中的任务
限制
队列级路由与 Cloud Key Management Service (Cloud KMS) 客户管理的加密密钥 (CMEK) 不兼容。如果启用了 CMEK,您将无法执行以下操作:
- 在具有队列级路由的队列中创建任务
- 应用队列级转送
为 HTTP 任务配置队列级路由
您可以在创建队列时或更新队列时配置队列以替换任务级路由。如需配置队列级路由,请将队列的 uriOverride 参数设置为首选路由。
如果您要将队列级路由作为对现有队列的更新来应用,请在应用更改之前暂停队列,并在应用更改后等待一分钟,然后再恢复队列。
运行以下命令,暂停队列:
gcloud tasks queues pause QUEUE_ID
将
QUEUE_ID替换为您的队列的 ID。更新或移除队列级路由。
如需更新队列级路由,请将
uriOverride参数设置为更新后的路由。如需使用 REST 或 RPC API 移除队列级路由,请执行以下操作:
REST API:发送
patch请求,其中包含空载荷,并将updateMask参数设置为httpTarget。RPC API:针对队列发送一个空载荷的
updateQueueRequest,并将update_mask参数设置为http_target。
以下示例使用 REST API 更新任务的路由目标主机:
curl -X PATCH