Nesta página, demonstramos como criar tarefas do App Engine de maneira programática e colocá-las em filas do Cloud Tasks.
Com esse processo, é possível especificar explicitamente o serviço e o gerenciador que
processa a tarefa e, opcionalmente, transmitir dados específicos da tarefa para o
gerenciador. O serviço Cloud Tasks encaminha a solicitação de tarefa ao gerenciador, mas esse worker está localizado no App Engine. Portanto, todas as filas
que segmentam gerenciadores do App Engine precisam ter um
aplicativo do App Engine.
Os gerenciadores precisam ser executados na região em que o
aplicativo do App Engine é executado. Essa região também serve como o
parâmetro LOCATION_ID
para suas solicitações do
Cloud Tasks. Para mais informações, consulte
Filas do Cloud Tasks com destinos do App Engine.
Também é possível ajustar a configuração da tarefa, como programar um horário no futuro em que ela será executada ou limitar o número de vezes que você quer que a tarefa seja repetida se falhar. Se você escolher especificar um nome para a tarefa, o Cloud Tasks vai poder usar esse nome para garantir a eliminação de duplicação, mas o processamento necessário pode adicionar mais latência.
Regras de firewall do App Engine
No ambiente padrão do App Engine, o firewall pode permitir que determinado tráfego interno ignore o firewall. Isso significa que, se você definir a regra default
como deny
, as solicitações de determinados serviços destinados ao ambiente padrão do App Engine não serão bloqueadas. Esses são todos os tipos de tráfego solicitados na configuração
do próprio app ou enviados do mesmo app. As solicitações que ignoram as regras de firewall dessa
maneira também incluem tarefas do App Engine no Cloud Tasks (incluindo
filas de tarefas do App Engine).
Para permitir solicitações recebidas, veja os intervalos de IP para as tarefas do App Engine no Cloud Tasks (incluindo as filas de tarefas do App Engine):
Intervalo de IP para solicitações enviadas ao ambiente padrão do App Engine:
0.1.0.2/32
(ignora a regra de firewall padrão se definido para negar)Intervalo de IP para solicitações enviadas ao ambiente flexível do App Engine:
0.1.0.2/32
Criar tarefas usando as bibliotecas de cliente
Você cria tarefas na forma de uma solicitação HTTP, que pode construir como quiser. No entanto, usar as bibliotecas de cliente, como os exemplos a seguir, pode ajudar a gerenciar detalhes de comunicação de baixo nível com o servidor, incluindo a autenticação com o Google. Para adicionar uma tarefa a uma fila, consulte Adicionar uma tarefa a uma fila do Cloud Tasks.
C#
Python
Observe o arquivo requirements.txt
:
Java
Observe o arquivo pom.xml
:
PHP
Observe o arquivo composer.json
:
Go
Node.js
Observe o arquivo package.json
:
Ruby
A seguir
- Saiba mais sobre como criar gerenciadores de tarefas do App Engine.
- Saiba mais sobre tarefas na referência da API RPC.
- Saiba mais sobre tarefas na referência da API REST.