Crie filas do Cloud Tasks

Esta página descreve como criar filas do Cloud Tasks. Quando as tarefas são adicionadas a uma fila, a fila envia-as e garante que são processadas de forma fiável por um serviço, também conhecido como trabalhador.

Tenha em conta o seguinte:

  • Os nomes das filas são compostos por três partes: um ID do projeto, uma localização e um ID da fila. Tem de ter um Google Cloud projeto que faculte o ID do projeto.

  • Se estiver a usar tarefas de destino do App Engine, também tem de ter uma aplicação do App Engine localizada numa região específica e onde a fila e os controladores são executados. Tenha em atenção a região quando adicionar a app.

  • A utilização de tarefas de destino HTTP não requer uma app do App Engine. Seleciona uma Google Cloud localização quando cria a fila.

Crie uma fila

Pode criar uma fila das seguintes formas:

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

Consola

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

    Aceder a Filas

  2. Clique em Criar fila.

  3. Introduza um Nome da fila, por exemplo, my-queue.

  4. Na lista Região, selecione uma localização suportada onde a fila vai ser executada, por exemplo, asia-south1.

    Se a sua organização restringir a localização dos recursos e quiser criar a sua fila em us-central1 ou us-central2, a política da organização tem de permitir a criação de filas em us-central1 e us-central2 (mesmo que só precise de uma fila numa dessas regiões).

  5. Opcionalmente, pode configurar ainda mais a sua fila.

  6. Clique em Criar.

gcloud

Use o comando gcloud tasks queues create para criar a sua fila:

  gcloud tasks queues create QUEUE_ID \
      --location=LOCATION

Substitua o seguinte:

  • QUEUE_ID: o identificador que atribui à sua fila, por exemplo, my-queue.

  • LOCATION: uma região suportada onde a fila vai ser executada, por exemplo, asia-south1.

    Se a sua organização restringir a localização dos recursos e quiser criar a fila em us-central1 ou us-central2, a política da organização tem de permitir a criação de filas em us-central1 e us-central2 (mesmo que só precise de uma fila numa dessas regiões).

Outras flags para o comando da CLI gcloud permitem-lhe configurar limites de taxa, opções de repetição, tipos de filas e muito mais.

API REST

Para criar uma fila, use o método projects.locations.queues.create.

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: uma região suportada onde a fila vai ser executada, por exemplo, asia-south1.

    Se a sua organização restringir a localização dos recursos e quiser criar a sua fila em us-central1 ou us-central2, a política da organização tem de permitir a criação de filas em us-central1 e us-central2 (mesmo que só precise de uma fila numa dessas regiões).

  • QUEUE_ID: o identificador que atribui à sua fila, por exemplo, my-queue.
Outras propriedades configuráveis para o recurso Queue incluem limites de taxa, opções de repetição, tipos de filas e muito mais.

Corpo JSON do pedido:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID"
}

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

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

Uma fila criada recentemente pode demorar alguns minutos a ficar disponível.

Descreva a sua fila

Pode confirmar que a fila foi criada com êxito das seguintes formas:

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

Consola

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

    Aceder a Filas

    Uma marca de verificação verde deve indicar que a fila está em execução.

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

gcloud

Use o comando gcloud tasks queues describe para verificar se a fila foi criada com êxito:

gcloud tasks queues describe QUEUE_ID \
    --location=LOCATION

Substitua o seguinte:

  • QUEUE_ID: o ID da fila (o nome abreviado)
  • LOCATION: a localização da fila

O resultado deve ser semelhante ao seguinte:

name: projects/PROJECT_ID/locations/LOCATION/queues/QUEUE_ID
rateLimits:
  maxBurstSize: 100
  maxConcurrentDispatches: 1000
  maxDispatchesPerSecond: 500.0
retryConfig:
  maxAttempts: 100
  maxBackoff: 3600s
  maxDoublings: 16
  minBackoff: 0.100s
state: RUNNING

API REST

Para obter uma fila, use o método projects.locations.queues.get.

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 a fila está implementada. Por exemplo, us-central1.
  • QUEUE_ID: o ID curto da fila, por exemplo, my-queue.

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

Resolva problemas ao criar uma fila

Se não vir o resultado esperado, pode experimentar o seguinte:

  • Aguarde, pelo menos, um minuto para que a fila seja inicializada.
  • Certifique-se de que já não existe uma fila com o mesmo ID. Pode ver as filas no seu projeto através do comando gcloud tasks queues list:

    gcloud tasks queues list \
        --location=LOCATION

    Para pesquisar várias localizações, tem de fazer vários pedidos.

  • Verifique se atingiu a quota da fila:

    1. Na Google Cloud consola, aceda à página Detalhes da API/serviço para a API Cloud Tasks .

      Aceder aos detalhes da API/serviço

    2. Clique no separador Quotas e limites do sistema.

    3. Para aumentar uma quota, na linha da quota, clique no ícone de reticências > Editar quota.

      Para mais informações, consulte o artigo Peça um ajuste da quota.

  • Volte a executar os comandos para criar a fila e certifique-se de que cada passo é concluído corretamente.

O que se segue?