Com o Cloud Scheduler, é possível definir a execução de unidades programadas de trabalho em horários definidos ou em intervalos regulares. Essas unidades são conhecidas como cron jobs. Os casos de uso típicos incluem o envio de relatórios diários por e-mail, a atualização a cada 10 minutos de dados armazenados em cache ou a atualização de informações de resumo a cada hora.
Cada cron job criado usando o Cloud Scheduler é enviado para um destino de acordo com uma programação especificada para que a tarefa seja realizada. O destino precisa ser de um destes tipos:
- pontos de extremidade HTTP/S
- Tópicos do Pub/Sub
- Aplicativos HTTP/S do App Engine
O Cloud Scheduler foi projetado para fornecer a entrega "pelo menos uma vez", ou seja, o job será executado pelo menos uma vez por execução programada. Em algumas circunstâncias raras, é possível que um job seja executado várias vezes em associação com uma única instância do cronograma. Portanto, o código precisa garantir que não haja efeitos colaterais prejudiciais da execução repetida. Seus destinos precisam ser idempotentes.
É possível criar cron jobs usando o Console do Cloud ou a ferramenta de linha de comando gcloud.
Regiões compatíveis por destino
Se o destino for um endpoint HTTP/S ou um tópico do Pub/Sub, o Cloud Scheduler estará disponível em todas as regiões Google Cloud compatíveis com o Cloud Scheduler.
Se o destino for um aplicativo do App Engine localizado no projeto atual:
Um job do Cloud Scheduler direcionado ao App Engine só pode ser criado na região do App Engine do projeto.
Um projeto do Google Cloud pode conter apenas um app do App Engine, e a região em que ele está localizado não pode ser alterada depois que o app é criado.
O App Engine é regional, o que significa que a infraestrutura que executa seu app está localizada em uma região específica. Se você quiser distribuir computação e jobs em várias regiões, segmente um endpoint HTTP/S ou tópico do Pub/Sub.
Se você não estiver usando o App Engine como destino, não será necessário implantar um app do App Engine, e você poderá desativar qualquer app do App Engine.
Política de repetição de jobs
Se um job do Cloud Scheduler não for concluído com sucesso e um reconhecimento não for recebido do gerenciador de jobs, ele será repetido com uma espera exponencial de acordo com a política de repetição configurada.
É possível configurar as definições que determinam o comportamento de repetição. Para mais informações, consulte Repetir jobs.