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.
Também é possível fazer o seguinte:
- Criar e personalizar várias filas para executar diversas tarefas com eficiência.
- Monitorar e gerenciar suas filas push no console do Google Cloud.
Quando você usa filas push, o aplicativo fica sujeito a cotas extras.
A seguir
- Saiba como criar filas push.
- Saiba como criar tarefas.
- Saiba como programar gerenciadores.
- Veja um exemplo.