Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Nesta página, você encontra uma visão geral das filas push. Nelas, as tarefas são executadas com o envio de solicitações HTTP aos serviços de worker do App Engine. As solicitações são entregues a uma taxa constante. Se uma tarefa falhar, o serviço tentará novamente,
enviando outra solicitação. Você precisa fornecer um gerenciador para cada tipo de tarefa que você
usa. Um único serviço pode ter vários gerenciadores para diferentes tipos de tarefas, ou
você pode usar serviços diferentes para gerenciar cada tipo de tarefa.
O prazo da tarefa
Quando um serviço de worker recebe uma solicitação de tarefa push, ele precisa processar a solicitação e enviar uma resposta HTTP dentro de um prazo que depende do tipo de escalonamento do serviço de worker.
Os serviços de escalonamento automático precisam terminar em até 10 minutos.
Os serviços de escalonamento manual e básico podem permanecer em execução por até 24 horas.
Um código de resposta HTTP entre 200 e 299 indica sucesso. Todos os outros valores indicam falha na tarefa. Se a tarefa não responder dentro do prazo ou o valor de resposta retornado for inválido, a tarefa será repetida.
Como repetir uma tarefa com falha
Se um gerenciador de solicitações de tarefas push retornar um código de status HTTP fora do intervalo 200–299 ou deixar de retornar qualquer resposta antes do fim do prazo da tarefa, a tarefa será repetida pela fila até ser bem-sucedida. O sistema recuará gradualmente para evitar sobrecarregar o aplicativo com muitas solicitações, mas programará novas tentativas de tarefas que falharam para que ocorram pelo menos uma vez por hora.
Como trabalhar com filas push
Para trabalhar com filas push, você precisará fazer pelo menos o seguinte:
Criar tarefas com programação e adicioná-las à fila push padrão ou a uma ou mais filas push nomeadas que você criou.
Gravar um gerenciador que processe a solicitação de uma tarefa e atribuí-lo a um serviço do App Engine.
[[["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\u003ePush queues dispatch HTTP requests to App Engine worker services, delivering them at a constant rate, and will retry tasks if they fail.\u003c/p\u003e\n"],["\u003cp\u003eWorker services handling push task requests must respond before a deadline, which is 10 minutes for automatic scaling services and up to 24 hours for manual and basic scaling services.\u003c/p\u003e\n"],["\u003cp\u003eSuccessful task completion is indicated by an HTTP response code between 200-299, while other codes or failures to respond result in task retries.\u003c/p\u003e\n"],["\u003cp\u003eWorking with push queues involves programmatically creating tasks and adding them to queues, as well as writing handlers to process task requests within App Engine services.\u003c/p\u003e\n"],["\u003cp\u003eYou have the option to create multiple queues for efficient task handling, and monitor these queues in the Google Cloud console, along with additional quotas.\u003c/p\u003e\n"]]],[],null,["# Use Push Queues\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\nGo Java PHP Python\n\nThis page provides an overview of push queues. Push queues run tasks by\ndispatching HTTP requests to App Engine worker services. The requests are\ndelivered at a constant rate. If a task fails, the service retries the task,\nsending another request. You must provide a handler for every kind of task you\nuse. A single service can have multiple handlers for different kinds of tasks, or\nyou can use different services to manage different task types.\n| This API is supported for first-generation runtimes and can be used when [upgrading to corresponding second-generation runtimes](/appengine/docs/standard/\n|\n| /services/access). If you are updating to the App Engine runtime, refer to the [Upgrade to second-generation runtimes]() page to learn about your migration options for legacy bundled services.\n\nThe task deadline\n-----------------\n\nWhen a worker service receives a push task request, it must handle the request\nand send an HTTP response before a deadline that depends on the [scaling\ntype](/appengine/docs/an-overview-of-app-engine#instances)\nof the worker service.\n\nAutomatic scaling services must finish before 10 minutes have elapsed.\nManual and basic scaling services can run up to 24 hours.\n\nAn HTTP response code between 200--299 indicates success; all other values\nindicate the task failed. If the task fails to respond within the deadline, or\nreturns an invalid response value, the task is retried.\n\nRetrying a failed task\n----------------------\n\nIf a push task request handler returns an HTTP status code outside the range\n200--299, or fails to return any response before the task deadline occurs, the queue\nretries the task until it succeeds. The system backs off gradually to\navoid flooding your application with too many requests, but schedules retry\nattempts for failed tasks to recur at a minimum of once per hour.\n\nWorking with push queues\n------------------------\n\nWhen working with push queues, at a minimum, you'll need to do the following things:\n\n- [Create tasks\n programmatically](/appengine/docs/standard/services/taskqueue/push/creating-push-tasks) and add them to the default push queue, or to one or more named push queues that you have created.\n- [Write a\n handler](/appengine/docs/standard/services/taskqueue/push/creating-handlers) that processes a task's request, and assign the handler to an App Engine service.\n\nOptionally, you can also:\n\n- [Create and customize multiple\n queues](/appengine/docs/standard/services/taskqueue/push/creating-push-queues) to perform multiple tasks efficiently.\n- [Monitor and manage](/appengine/docs/standard/services/taskqueue/push/creating-push-queues#monitoring_queues_in_the_console_name_short) your push queues in the Google Cloud console.\n\nWhen you use push queues, your application is subject to additional\n[quotas](/appengine/docs/quotas#Task_Queue).\n\nWhat's next\n-----------\n\n- Learn how to [create push queues](/appengine/docs/standard/services/taskqueue/push/creating-push-queues).\n- Learn how to [create tasks](/appengine/docs/standard/services/taskqueue/push/creating-push-tasks).\n- Learn about [writing handlers](/appengine/docs/standard/services/taskqueue/push/creating-handlers).\n- Look at an [example](/appengine/docs/standard/services/taskqueue/push/example)."]]