Filas push no Python

Nesta página, você encontra uma visão geral das filas push. As tarefas de envio de solicitações HTTP aos worker services do App Engine são executadas por meio dessas filas de push. As solicitações são entregues a uma taxa constante. No caso de falha de uma tarefa, ela é repetida pelo serviço com o envio de uma nova solicitação. É preciso gravar 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 podem ser usados diferentes serviços para os diversos tipos de tarefa.

diagrama

O prazo da tarefa

Quando um worker service recebe uma solicitação de tarefa push, ele tem um prazo obrigatório, que depende do respectivo tipo de escalonamento, para atender e enviar a resposta HTTP.

Os serviços de escalonamento automático precisam terminar em 10 minutos. Os serviços de escalonamento manual e básico podem ser executados em até 24 horas.

Um código de resposta HTTP entre 200–299 indica sucesso, todos os outros valores indicam que a tarefa falhou. Se a tarefa não for executada dentro do prazo, ou se o valor de resposta retornado for inválido, haverá uma nova tentativa de processamento da tarefa.

Como repetir uma tarefa com falha

Se um gerenciador de solicitação de tarefa push retornar um código de status HTTP fora do intervalo 200–299 ou falhar ao retornar qualquer resposta antes do fim do prazo da tarefa, o App Engine tentará processar a tarefa novamente até que ela seja bem-sucedida. O sistema recua gradualmente para evitar sobrecarregar o aplicativo com muitas solicitações, mas programa novas tentativas de processamento de tarefas que falharam para que ocorram no máximo uma vez por hora.

Como trabalhar com filas push

Para trabalhar com filas push, você precisará fazer pelo menos o seguinte:

Também é possível:

Quando filas push são utilizadas, o aplicativo está sujeito a cotas extras.

Próximas etapas

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Ambiente padrão do App Engine para Python