Criar filas do Cloud Tasks

Nesta página, descrevemos como criar filas do Cloud Tasks. Quando as tarefas são adicionadas a uma fila, ela as despacha e garante que sejam processadas de forma confiável por um serviço, também conhecido como worker.

Observe o seguinte:

  • Os nomes das filas consistem em três partes: um ID do projeto, um local e um ID da fila. Você precisa ter um Google Cloud projeto que forneça o ID do projeto.

  • Se você estiver usando tarefas de destino do App Engine, também precisará ter um aplicativo do App Engine localizado em uma região específica, que é onde a fila e os manipuladores são executados. Observe a região ao adicionar o app.

  • O uso de tarefas de destino HTTP não exige um app do App Engine. Você seleciona um Google Cloud local ao criar a fila.

Crie uma fila

É possível criar uma fila das seguintes maneiras:

  • No console do Google Cloud
  • Usando a Google Cloud CLI no terminal ou no Cloud Shell
  • Enviando uma solicitação direta para a API Cloud Tasks

Console

  1. No Google Cloud console, acesse a página Cloud Tasks > Filas.

    Acessar "Filas"

  2. Clique em Criar fila.

  3. Digite um nome de fila, por exemplo, my-queue.

  4. Na lista Região, selecione um local compatível em que a fila será executada, por exemplo, asia-south1.

    Se a organização restringir a localização de recursos e você quiser criar a fila em us-central1 ou us-central2, a política da organização precisará permitir a criação de filas em us-central1 e us-central2, mesmo que você só precise de uma fila em uma dessas regiões.

  5. Se quiser, configure ainda mais sua fila.

  6. Clique em Criar.

gcloud

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

  gcloud tasks queues create QUEUE_ID \
      --location=LOCATION

Substitua:

  • QUEUE_ID: o identificador atribuído à sua fila, por exemplo, my-queue.

  • LOCATION: uma região compatível em que a fila será executada, por exemplo, asia-south1.

    Se a organização restringir a localização de recursos e você quiser criar a fila em us-central1 ou us-central2, a política da organização precisará permitir a criação de filas em us-central1 e us-central2, mesmo que você só precise de uma fila em uma dessas regiões.

Outras flags do comando da CLI gcloud permitem configurar limites de taxa, opções de nova tentativa, tipos de fila e muito mais.

API REST

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

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto do Google Cloud .
  • LOCATION: uma região compatível em que a fila será executada, por exemplo, asia-south1.

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

  • QUEUE_ID: o identificador atribuído à sua fila, por exemplo, my-queue.
Outras propriedades configuráveis para o recursoQueue incluem limites de taxa, opções de repetição, tipos de fila e muito mais.

Corpo JSON da solicitação:

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

Para enviar a solicitação, expanda uma destas opções:

Se houver êxito, o corpo da resposta conterá 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"
}

Pode demorar alguns minutos para que uma fila recém-criada esteja disponível.

Descreva sua fila

Para confirmar se a fila foi criada com sucesso:

  • No console do Google Cloud
  • Usando a CLI gcloud no terminal ou no Cloud Shell
  • Enviando uma solicitação direta para a API Cloud Tasks

Console

  1. No Google Cloud console, acesse a página Cloud Tasks > Filas.

    Acessar "Filas"

    Uma marca de seleção verde indica que a fila está em execução.

  2. Para mais detalhes, clique no nome da fila e na guia Configuração.

gcloud

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

gcloud tasks queues describe QUEUE_ID \
    --location=LOCATION

Substitua:

  • QUEUE_ID: o ID da fila (nome abreviado)
  • LOCATION: o local da fila

A saída será semelhante a esta:

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 recuperar uma fila, use o método projects.locations.queues.get.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto do Google Cloud .
  • LOCATION: a região em que a fila é implantada, por exemplo, us-central1.
  • QUEUE_ID: o ID curto da fila. Por exemplo, my-queue.

Para enviar a solicitação, expanda uma destas opções:

Se houver êxito, o corpo da resposta conterá 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"
}

Resolver problemas na criação de uma fila

Se você não vir o resultado esperado, tente o seguinte:

  • Aguarde pelo menos um minuto para que a fila seja inicializada.
  • Verifique se já há uma fila com o mesmo código. Para ver as filas no projeto, use o comando gcloud tasks queues list:

    gcloud tasks queues list \
        --location=LOCATION

    Para pesquisar vários locais, é necessário fazer várias solicitações.

  • Verifique se você atingiu a cota da fila:

    1. No console Google Cloud , acesse a página Detalhes da API/serviço da API Cloud Tasks .

      Acessar Detalhes da API/serviço

    2. Clique na guia Cotas e limites do sistema.

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

      Para mais informações, consulte Solicitar um ajuste de cota.

  • Execute os comandos novamente para criar a fila e garantir que cada etapa seja concluída corretamente.

A seguir