Faça a gestão de filas e tarefas

Pode gerir filas e tarefas das seguintes formas:

  • Na consola Google Cloud
  • Usando a Google Cloud CLI no seu terminal ou no Cloud Shell
  • Enviando um pedido para a API Cloud Tasks

Elimine uma tarefa de uma fila

Pode eliminar uma tarefa se estiver agendada ou enviada. Por exemplo, pode ter de eliminar uma tarefa que não pode ser concluída com êxito, independentemente do número de vezes que é repetida. Não pode eliminar uma tarefa se tiver sido concluída com êxito ou se tiver esgotado as tentativas após falhas consistentes.

Consola

  1. Na Google Cloud consola, aceda à página Cloud Tasks > Filas.

    Aceder a Filas

  2. Clique no nome da fila da tarefa que quer eliminar.

  3. Selecione a caixa de verificação da tarefa que quer eliminar.

  4. Clique em Eliminar tarefa.

  5. Na mensagem, clique em Eliminar.

gcloud

Elimine uma tarefa com o comando gcloud tasks delete:

gcloud tasks delete TASK_NAME \
    --queue=QUEUE_ID \
    --location=LOCATION

Substitua o seguinte:

  • TASK_NAME: o nome da tarefa que quer eliminar
  • QUEUE_ID: o nome da fila à qual a tarefa pertence
  • LOCATION: a região na qual a fila está implementada, por exemplo, us-central1

REST

Para eliminar uma tarefa, use o método projects.locations.queues.tasks.delete.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • QUEUE_ID: o nome da fila à qual a tarefa pertence
  • TASK_NAME: o nome da tarefa que quer eliminar
  • PROJECT_ID: o ID do seu Google Cloud projeto
  • LOCATION: a região em que a fila existe, por exemplo, us-central1

O corpo do pedido tem de estar vazio.

Para enviar o seu pedido, expanda uma destas opções:

Se for bem-sucedido, o corpo da resposta está vazio.

Remova completamente todas as tarefas de uma fila

Pode eliminar todas as tarefas de uma fila ao limpá-las. Todas as tarefas criadas antes da chamada de limpeza são eliminadas permanentemente. No entanto, as operações de eliminação podem demorar até um minuto a entrar em vigor, e as tarefas podem ser enviadas antes de a eliminação entrar em vigor.

Consola

  1. Na Google Cloud consola, aceda à página Cloud Tasks > Filas.

    Aceder a Filas

  2. Clique no nome da fila das tarefas que quer eliminar.

  3. Clique em Limpar fila.

  4. Na mensagem, clique em Eliminar permanentemente.

gcloud

Limpe uma fila através do comando gcloud tasks queues purge:

gcloud tasks queues purge QUEUE_ID \
    --location=LOCATION

Substitua o seguinte:

  • QUEUE_ID: o nome da fila que quer limpar
  • LOCATION: a região na qual a fila está implementada, por exemplo, us-central1

REST

Para limpar uma fila, use o método projects.locations.queues.purge.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • QUEUE_ID: o nome da fila que quer limpar
  • PROJECT_ID: o ID do seu Google Cloud projeto
  • LOCATION: a região na qual a fila está implementada, por exemplo, us-central1

O corpo do pedido tem de estar vazio.

Para enviar o seu pedido, expanda uma destas opções:

Se for bem-sucedido, o corpo da resposta contém uma instância de 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"
}

Pausar ou retomar filas

Pode pausar ou retomar uma fila. Pausar uma fila significa que a execução e o fornecimento de tarefas são interrompidos. Continua a poder criar tarefas e enviá-las ou anexá-las à fila, mas as tarefas não são processadas. Quando a fila é retomada, todas as tarefas pendentes são processadas por ordem de adição à fila de tarefas pendentes.

Consola

  1. Na Google Cloud consola, aceda à página Cloud Tasks > Filas.

    Aceder a Filas

  2. Selecione a caixa de verificação da fila que quer pausar.

  3. Clique em Pausar fila.

  4. Na mensagem, clique em Pausar.

  5. Para retomar a fila, clique em Retomar fila.

gcloud

  1. Pause uma fila através do comando: gcloud tasks queues pause

    gcloud tasks queues pause QUEUE_ID \
        --location=LOCATION

    Substitua o seguinte:

    • QUEUE_ID: o nome da fila que quer pausar
    • LOCATION: a região na qual a fila está implementada, por exemplo, us-central1
  2. Retome uma fila com o comando gcloud tasks queues resume:

    gcloud tasks queues resume QUEUE_ID \
        --location=LOCATION

REST

  1. Para pausar uma fila, use o método projects.locations.queues.pause.

    Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

    • QUEUE_ID: o nome da fila que quer pausar
    • PROJECT_ID: o ID do seu projeto Google Cloud
    • LOCATION: a região na qual a fila está implementada, por exemplo, us-central1

    O corpo do pedido tem de estar vazio.

    Para enviar o seu pedido, expanda uma destas opções:

    Se for bem-sucedido, o corpo da resposta contém uma instância de 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"
    }
    

  2. Para retomar uma fila, use o método projects.locations.queues.resume.

    Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

    • QUEUE_ID: o nome da fila que quer retomar
    • PROJECT_ID: o ID do seu Google Cloud projeto
    • LOCATION: a região na qual a fila está implementada, por exemplo, us-central1

    O corpo do pedido tem de estar vazio.

    Para enviar o seu pedido, expanda uma destas opções:

    Se for bem-sucedido, o corpo da resposta contém uma instância de 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"
    }
    

Listar filas

Pode listar filas. Quando lista filas, são devolvidos alguns detalhes do limite de taxa e do parâmetro de repetição. Tenha em atenção que os seguintes campos são equivalentes:

  • Taxa máxima (consola), MAX_RATE (gcloud), maxDispatchesPerSecond (REST)
  • Máximo de pedidos simultâneos (consola), MAX_NUM_OF_TASKS (gcloud), maxConcurrentDispatches (REST)

Consola

  1. Na Google Cloud consola, aceda à página Cloud Tasks > Filas.

    Aceder a Filas

    Todas as filas no seu Google Cloud projeto são apresentadas.

  2. Para ver mais detalhes, clique no nome de uma fila e, de seguida, clique no separador Configuração.

    São apresentados os detalhes do limite de taxa e dos parâmetros de repetição.

gcloud

Apresente uma lista de filas através do comando gcloud tasks queues list:

gcloud tasks queues list \
    --location=LOCATION

Substitua LOCATION pela região na qual a fila está implementada, por exemplo, us-central1. Se não for especificada uma localização, é usada a localização da app do App Engine do seu Google Cloud projeto, se existir. Caso contrário, tem de especificar uma localização.

O resultado deve ser semelhante ao seguinte:

QUEUE_NAME: my-queue
STATE: PAUSED
MAX_NUM_OF_TASKS: 1000
MAX_RATE (/sec): 500.0
MAX_ATTEMPTS: 100
...

REST

Para listar filas, use o método projects.locations.queues.list.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • PROJECT_ID: o ID do seu Google Cloud projeto.
  • LOCATION: a região na qual as filas são criadas, por exemplo, us-central1.

Para enviar o seu pedido, expanda uma destas opções:

Se for bem-sucedido, o corpo da resposta contém instâncias de recursos Queue e a resposta deve ser semelhante à seguinte:

{
  "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"
}

Elimine filas

Pode eliminar uma fila. Todas as tarefas na fila também são eliminadas. Se eliminar uma fila, tem de aguardar 3 dias antes de a recriar com o mesmo nome. Este período de espera impede um comportamento inesperado em tarefas que estão a ser executadas no momento da eliminação ou que estão à espera de serem executadas. Também evita falhas de processo interno no ciclo de eliminação ou recriação.

Consola

  1. Na Google Cloud consola, aceda à página Cloud Tasks > Filas.

    Aceder a Filas

  2. Selecione a caixa de verificação da fila que quer eliminar.

  3. Clique em Eliminar fila.

  4. No comando, escreva o nome da fila e, de seguida, clique em Confirmar.

gcloud

Elimine uma fila através do comando gcloud tasks queues delete:

gcloud tasks queues delete QUEUE_ID \
    --location=LOCATION

Substitua o seguinte:

  • QUEUE_ID: o nome da fila que quer eliminar
  • LOCATION: a região na qual a fila está implementada, por exemplo, us-central1

REST

Para eliminar uma fila, use o método projects.locations.queues.delete.

Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:

  • QUEUE_ID: o nome da fila que quer eliminar
  • PROJECT_ID: o ID do seu Google Cloud projeto
  • LOCATION: a região na qual a fila está implementada, por exemplo, us-central1

O corpo do pedido tem de estar vazio.

Para enviar o seu pedido, expanda uma destas opções:

Se for bem-sucedido, o corpo da resposta está vazio.