Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
ID da região
O REGION_ID é um código abreviado que o Google atribui
com base na região que você selecionou ao criar o aplicativo. O código não
corresponde a um país ou estado, ainda que alguns IDs de região sejam semelhantes
aos códigos de país e estado geralmente usados. Para apps criados após
fevereiro de 2020, o REGION_ID.r está incluído nos
URLs do App Engine. Para apps existentes criados antes dessa data, o
ID da região é opcional no URL.
O arquivo de configuração queue.yaml é usado para criar e configurar quase todas
as filas de tarefas
usadas pelo aplicativo. Todos os aplicativos do App Engine vêm com
uma fila push pré-configurada automaticamente chamada default. Embora você não
crie a fila default, é possível adicionar outras filas ou mudar a
configuração da fila default usando o arquivo queue.yaml.
Para configurar
,
é possível usar queue.yaml ou métodos do Cloud Tasks
Gerenciamento de filas, mas
não os dois ao mesmo tempo. Combinar o
método de upload queue.yaml com os métodos de gerenciamento de fila pode produzir resultados
inesperados e não é recomendado.
Exemplo
Este é um exemplo básico que define uma fila nomeada e substitui a taxa de processamento padrão:
queue:
- name: my-push-queue
rate: 1/s
Veja a seguir um exemplo mais complexo de uma configuração queue.yaml que
demonstra a configuração do número de tentativas de tarefas e a modificação da taxa de processamento padrão.
O arquivo queue.yaml é um YAML com a diretiva raiz queue.
Essa diretiva contém zero ou mais filas nomeadas. Cada definição de fila pode especificar os seguintes elementos:
Elemento
Descrição
bucket_size (filas push)
Opcional. Uma fila de tarefas usa o algoritmo de bucket de token para controlar a taxa de execução da tarefa. Cada fila nomeada tem um bucket que contém tokens
até o máximo especificado pelo valor bucket_size. Sempre que o aplicativo executa uma tarefa, um token é removido do bucket.
Você continua processando tarefas na fila até o bucket da fila ficar sem tokens. O App Engine recarrega continuamente o bucket com novos tokens com base na taxa especificada para a fila.
O tamanho do bucket limita com que velocidade a fila é processada quando há muitas tarefas na fila e a taxa é alta. O valor máximo do tamanho do bucket é 500. Isso permite ter uma taxa alta. Dessa maneira, o processamento começará logo depois que uma tarefa for colocada na fila, mas ainda limitará o uso de recursos quando muitas tarefas forem enfileiradas em um curto período.
Se você não especificar bucket_size para uma fila, o valor padrão será 5. Recomendamos que você o defina com um valor maior,
porque o tamanho padrão pode ser muito pequeno para muitos casos de uso. Por
exemplo, é possível determinar o tamanho do bucket com base na
taxa de processamento.
Para mais informações sobre esse elemento, consulte a descrição comparativa de
max_burst_size
na referência da API Cloud Tasks.
max_concurrent_requests (filas push)
Opcional.
Define o número máximo de tarefas que podem ser executadas simultaneamente a partir da fila especificada. O valor é um número inteiro. Por padrão, o limite é de 1.000 tarefas por fila. O limite máximo recomendado é de 5.000 tarefas por fila. Observe que as filas podem aumentar lentamente quando forem criadas pela primeira vez ou se estiverem inativas por um tempo.
A restrição do número de tarefas simultâneas dá mais controle sobre a taxa de execução da fila e pode evitar que muitas tarefas sejam executadas de uma só vez. Isso também pode impedir a contenção do armazenamento de dados e disponibilizar recursos para outras filas ou processamento on-line.
Para mais informações sobre esse elemento, consulte a descrição comparativa de
max_concurrent_dispatches na referência da API Cloud Tasks.
name
Obrigatório.
O nome da fila.
Um nome de fila pode conter letras maiúsculas e minúsculas, números e hifens. O comprimento máximo de um nome de fila é de 100 caracteres.
Todos os aplicativos têm uma fila push chamada "default". Essa fila tem uma taxa predefinida
de cinco tarefas por segundo. Observe que essa fila padrão não é exibida no
Console do Google Cloud até ser usada ou configurada pela primeira vez.
Para configurar a fila padrão, incluindo a mudança da taxa padrão,
defina uma fila chamada "padrão" no arquivo queue.yaml.
rate (filas push)
Obrigatório.
Com que frequência as tarefas são processadas nesta fila. O valor é um número
seguido por barra e uma unidade de tempo, no qual a unidade é
s para segundos, m para minutos, h
para horas ou d para dias. Por exemplo, o valor
5/m diz que tarefas serão processadas a uma taxa de 5 vezes por
minuto. O valor máximo para rate é 500/s.
Se o número for 0 (como 0/s), a fila
será considerada "pausada", e nenhuma tarefa será processada.
Para mais informações sobre esse elemento, consulte a descrição comparativa de
max_dispatches_per_second na referência da API Cloud Tasks.
retry_parameters
Opcional.
Configura tentativas de repetição de tarefas com falha em filas push. Essa adição permite especificar o número máximo de vezes em que tarefas com falha são repetidas em uma fila específica. Também é possível definir um limite de tempo para novas tentativas e controlar o intervalo entre elas.
Os parâmetros de repetição podem conter os seguintes subelementos:
task_retry_limit
O número de novas tentativas. Por exemplo, se o valor especificado for 0,
a tarefa não será executada novamente em caso de
falha. Se o valor for definido como 1 e a tarefa falhar,
haverá uma nova tentativa. Se esse parâmetro não for especificado, a tarefa será repetida indefinidamente. Se task_retry_limit for especificado
com task_age_limit, a tarefa será repetida até que ambos
os limites sejam atingidos.
task_age_limit (filas push)
O limite de tempo para repetir uma tarefa com falha, desde o momento em que a
tarefa foi executada pela primeira vez. O valor é um número seguido por uma unidade de
tempo, em que a unidade é s para segundos, m
para minutos, h para horas ou d para dias.
Por exemplo, o valor 5d especifica um limite de cinco
dias depois da primeira tentativa de execução da tarefa. Se esse parâmetro não for especificado, a tarefa será repetida indefinidamente. Se especificado com
task_retry_limit, o App Engine repetirá a tarefa até que
ambos os limites sejam atingidos.
min_backoff_seconds (filas push)
O número mínimo de segundos para aguardar antes de repetir uma tarefa depois que ela
falhar. O valor padrão é 0.1.
max_backoff_seconds (filas push)
O número máximo de segundos para aguardar antes de repetir uma tarefa depois que ela
falhar. O valor padrão é 3600.
max_doublings (filas push)
O número máximo de vezes que o intervalo entre novas tentativas de tarefas com
falhas será dobrado antes que o aumento se torne constante. A
constante é: 2**max_doublings * min_backoff_seconds.
O valor padrão é 16.
target (filas push)
Opcional.
Uma string que nomeia um serviço/versão, uma versão de front-end ou um back-end, em que todas as tarefas enfileiradas são executadas. O valor padrão é a string vazia.
A sequência é anexada ao nome do domínio do seu aplicativo ao criar a solicitação HTTP para uma tarefa. Por exemplo, se o ID do seu aplicativo
for my-app e você definir o destino como
my-version-dot-my-service, o nome do host do URL será definido como
my-version-dot-my-service-dot-my-app.REGION_ID.r.appspot.com.
Se o destino não for especificado, as tarefas serão invocadas na mesma versão do aplicativo em que foram enfileiradas. Dessa maneira, se você tiver enfileirado uma tarefa da versão do aplicativo padrão sem especificar um destino na fila, a tarefa será invocada na versão padrão do aplicativo.
Se a versão padrão do aplicativo mudar entre o momento em que a tarefa for enfileirada e o momento em que for executada, a tarefa será executada na nova versão padrão.
Se você estiver usando serviços com um arquivo de expedição, a solicitação HTTP da tarefa poderá ser interceptada e encaminhada para outro serviço.
Como implantar o arquivo de configuração da fila
Como excluir filas
Para excluir uma fila:
Remova a definição da fila do arquivo queue.yaml.
Faça upload da alteração no arquivo queue.yaml.
gcloud app deploy queue.yaml
Exclua a fila do Console do Google Cloud, selecione a fila e clique em
Excluir fila:
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-04-21 UTC."],[[["\u003cp\u003eThe \u003ccode\u003eREGION_ID\u003c/code\u003e is a Google-assigned code based on the selected region when creating an app and is included in App Engine URLs for apps created after February 2020.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003equeue.yaml\u003c/code\u003e file is used to create and configure task queues, including the preconfigured \u003ccode\u003edefault\u003c/code\u003e queue, but should not be mixed with Queue Management methods to avoid unexpected results.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003equeue.yaml\u003c/code\u003e file contains definitions for one or multiple named queues, where each queue definition can specify elements like \u003ccode\u003ename\u003c/code\u003e, \u003ccode\u003erate\u003c/code\u003e, \u003ccode\u003ebucket_size\u003c/code\u003e, \u003ccode\u003emax_concurrent_requests\u003c/code\u003e, \u003ccode\u003eretry_parameters\u003c/code\u003e and \u003ccode\u003etarget\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003erate\u003c/code\u003e parameter in \u003ccode\u003equeue.yaml\u003c/code\u003e controls how often tasks are processed, with a maximum value of \u003ccode\u003e500/s\u003c/code\u003e, and can be set to \u003ccode\u003e0/s\u003c/code\u003e to pause the queue, while the \u003ccode\u003eretry_parameters\u003c/code\u003e allows to setup the maximum time and amount of retries.\u003c/p\u003e\n"],["\u003cp\u003eTo delete a queue, remove its definition from \u003ccode\u003equeue.yaml\u003c/code\u003e, upload the changes, and then delete the queue in the Google Cloud console, where you must wait 7 days before reusing the same name.\u003c/p\u003e\n"]]],[],null,["# queue.yaml Reference\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\n### Region ID\n\nThe \u003cvar translate=\"no\"\u003eREGION_ID\u003c/var\u003e is an abbreviated code that Google assigns\nbased on the region you select when you create your app. The code does not\ncorrespond to a country or province, even though some region IDs may appear\nsimilar to commonly used country and province codes. For apps created after\nFebruary 2020, \u003cvar translate=\"no\"\u003eREGION_ID\u003c/var\u003e`.r` is included in\nApp Engine URLs. For existing apps created before this date, the\nregion ID is optional in the URL.\n\nLearn more\n[about region IDs](/appengine/docs/legacy/standard/python/how-requests-are-routed#region-id). \nOK \nGo Java Node.js PHP Python Ruby\n\nThe `queue.yaml` configuration file is used to create and configure almost all\nof the task queues\n\n\nyour app uses. All App Engine apps come with\nan automatically preconfigured push queue named `default`. Although you do not\ncreate the `default` queue yourself, you can add other queues or change the\nconfiguration of the `default` queue using the `queue.yaml` file.\n\nTo configure\n\nyou can use either `queue.yaml` or\n[Queue Management](/tasks/docs/queue-yaml) methods from Cloud Tasks, but\n[not both](/tasks/docs/queue-yaml#pitfalls) at the same time. Mixing the\n`queue.yaml` upload method with Queue Management methods can produce unexpected\nresults and is not recommended.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| **Caution:** When uploading a `queue.yaml` file via the gcloud CLI below version `332.0.0` uses a deprecated interface to the service. Starting on `2022-09-20`, attempts to use the upload method can fail with server errors. To resolve this, make sure the Cloud Tasks API is enabled in your project and your gcloud CLI is updated to at least version `332.0.0`.\n\nExample\n-------\n\nThe following a basic example that defines a named queue and overrides the\ndefault processing rate: \n\n queue:\n - name: my-push-queue\n rate: 1/s\n\nThe following is a more complex example of a `queue.yaml` configuration that\ndemonstrates setting up the number of task tries and modifying the default\nprocessing rate. \n\n queue:\n - name: fooqueue\n rate: 1/s\n retry_parameters:\n task_retry_limit: 7\n task_age_limit: 2d\n - name: barqueue\n rate: 1/s\n retry_parameters:\n min_backoff_seconds: 10\n max_backoff_seconds: 200\n max_doublings: 0\n - name: bazqueue\n rate: 1/s\n retry_parameters:\n min_backoff_seconds: 10\n max_backoff_seconds: 200\n max_doublings: 3\n\nSyntax\n------\n\nThe `queue.yaml` file is a YAML file whose root directive is `queue`.\nThis directive contains zero or more named queues. Each queue definition can\nspecify the following elements:\n\nDeploying the queue configuration file\n--------------------------------------\n\nDeleting queues\n---------------\n\nTo delete a queue:\n\n1. Remove the queue definition from your `queue.yaml` file.\n\n2. Upload the change to your `queue.yaml` file.\n\n gcloud app deploy queue.yaml\n3. Delete the queue in the Google Cloud console, select the queue and click\n **Delete queue**:\n\n [Go to the Task queues page](https://console.cloud.google.com/appengine/taskqueues)\n\nIf you delete a queue from the Google Cloud console, you must wait 7 days\nbefore recreating with the same name."]]