Qual plano escolher para Jobs agendados
Um Job agendado executa uma tarefa em horários definidos por cron e termina. A cobrança é por minuto de execução, então o plano define quanto cada minuto custa e quanta CPU e memória a tarefa tem para terminar o trabalho.
A regra prática é simples: escolha o menor plano em que a tarefa termina sem faltar memória. Um plano maior custa mais por minuto, mas pode terminar a mesma tarefa em menos minutos.
Resumo rápido
| Plano | vCPU | RAM | Foco | Exemplos típicos |
|---|---|---|---|---|
job-starter | 0,1 | 64 MB | Tarefas curtas e leves, com custo mínimo | Chamar uma URL, enviar um ping, limpar arquivos, script shell |
job-basic | 0,5 | 512 MB | Scripts de aplicação com dependências | Script Node.js ou Python que acessa banco, envio de e-mails, sincronização com APIs |
job-premium | 1 | 1 GB | Tarefas pesadas, com métricas por execução | Relatórios, exportação de dados, processamento de arquivos, backups lógicos |
Todos os planos têm até 60 minutos por execução, agendamento em UTC, logs de cada execução e armazenamento persistente opcional. Veja os detalhes em Limites e quotas.
job-starter
Foco: tarefas muito curtas, que usam pouca memória e terminam em segundos.
Com 0,1 vCPU e 64 MB, o job-starter é ideal para tarefas que chamam algo e saem. Nos nossos testes, imagens pequenas (como Alpine com shell) e scripts mínimos de Python ou Node.js iniciaram e terminaram normalmente, com 2 a 4 segundos só para iniciar o interpretador.
- Faz sentido para: chamar um endpoint da sua aplicação com
curlouwget(por exemplo, para disparar uma rotina), enviar um sinal de "estou vivo" a um serviço de monitoramento, apagar arquivos antigos de um volume, scripts shell simples. - Não é o ideal para: scripts que instalam ou carregam muitas dependências, que conectam a um banco com um ORM ou que processam arquivos grandes. Essas tarefas tendem a ficar lentas ou a faltar memória; use o
job-basic.
job-basic
Foco: o plano padrão para scripts de aplicação.
Com 0,5 vCPU e 512 MB, o job-basic roda scripts Node.js, Python ou Bun com as dependências do seu projeto.
- Faz sentido para: enviar e-mails ou notificações em lote, sincronizar dados com APIs externas, atualizar caches, gerar sitemaps, tarefas de manutenção que acessam o banco de dados com o ORM da aplicação.
job-premium
Foco: tarefas pesadas e acompanhamento de consumo.
Com 1 vCPU e 1 GB, o job-premium termina mais rápido tarefas que usam muita CPU ou memória. É o único plano de Job com métricas de CPU e memória por execução, úteis para saber se a tarefa está perto do limite.
- Faz sentido para: relatórios e exportações grandes, processamento de imagens, planilhas ou PDFs, importação de arquivos, backups lógicos de banco de dados, rotinas de faturamento.
Como saber se o plano está certo
| Sinal | O que fazer |
|---|---|
| A execução termina com erro sem mensagem clara e os logs param de repente | Provável falta de memória; use um plano com mais RAM |
| A execução leva muitos minutos e usa a CPU o tempo todo | Teste um plano maior; ele pode terminar em menos minutos e custar menos no total |
| A execução chega perto dos 60 minutos | Divida a tarefa em partes menores ou use um plano maior |
Perguntas frequentes
Pago pelo tempo em que o Job está preparando a execução?
Não. A cobrança começa quando a tarefa começa a rodar e é feita por minuto de execução, arredondado para cima. Veja Jobs agendados.
Posso usar um Job em vez de um projeto HTTP sempre ligado?
Sim, quando a tarefa roda em horários definidos. Um worker que precisa ficar escutando uma fila o tempo todo deve ser um projeto HTTP ou usar Filas.
Próximos passos
Última atualização em
Qual plano HTTP escolher para a sua aplicação
Para que serve cada plano HTTP da Zenifra, do Free ao Deep Learning, com exemplos de aplicações que rodam bem em cada um e sinais de que é hora de trocar.
Qual plano de banco de dados escolher
Para que serve cada plano de PostgreSQL, MariaDB, Valkey Chave-Valor e Analytics na Zenifra, com exemplos de uso que fazem sentido em cada um.