Node.js: Tarefas cron
Automatize tarefas de forma eficaz em Node.js com tarefas cron
👋 Bem-vindo à documentação do Stackhero!
A Stackhero oferece uma solução Node.js cloud pronta a usar que proporciona uma série de benefícios, incluindo:
- Implemente a sua aplicação em segundos com um simples
git push.- Utilize o seu próprio nome de domínio e beneficie da configuração automática de certificados HTTPS para uma segurança reforçada.
- Desfrute de tranquilidade com backups automáticos, atualizações com um clique, e preços simples, transparentes e previsíveis.
- Obtenha desempenho ótimo e segurança robusta graças a uma VM privada e dedicada.
Poupe tempo e simplifique a sua vida: só leva 5 minutos para experimentar a solução de hospedagem cloud Node.js da Stackhero!
Ao desenvolver aplicações Node.js, automatizar tarefas repetitivas como enviar emails agendados, limpar dados expirados ou realizar manutenção regular pode melhorar significativamente tanto a eficiência quanto a escalabilidade. O módulo cron, disponível no npm (módulo cron no npm), oferece uma maneira simples e eficaz de implementar essa automação.
Nota: Embora o módulo npm
node-cronseja outra ferramenta disponível para tarefas cron, este guia foca especificamente no módulocrone na sua implementação.
Introdução
Para começar a usar o módulo cron no seu projeto, inclua-o como uma dependência executando o seguinte comando:
npm install cron
Uma vez que o módulo esteja instalado, pode começar a agendar e gerir tarefas cron na sua aplicação. Aqui está um exemplo prático:
const cron = require('cron');
const cronJobs = [];
// Lidar graciosamente com o encerramento da aplicação parando todas as tarefas cron agendadas.
// Ao implementar novo código ou encerrar a aplicação, um sinal de terminação (SIGTERM) é enviado.
// Isso garante que a aplicação pare todas as tarefas cron em execução antes de sair.
process.on('SIGTERM', () => {
cronJobs.forEach(cronJob => cronJob.stop());
});
// Agendar uma tarefa cron para executar a cada segundo.
cronJobs.push(
new cron.CronJob(
'* * * * * *', // Agendamento: A cada segundo
() => {
console.log("Esta mensagem aparecerá a cada segundo.");
},
null,
true
)
);
// Agendar uma tarefa cron para executar a cada minuto.
cronJobs.push(
new cron.CronJob(
'0 */1 * * * *', // Agendamento: A cada minuto
() => {
console.log("Esta mensagem aparecerá a cada minuto.");
},
null,
true
)
);
Compreender a sintaxe cron
O módulo cron utiliza a sintaxe padrão UNIX cron para definir agendamentos. Aqui estão alguns exemplos comuns:
- A cada segundo:
* * * * * * - A cada 30 segundos:
*/30 * * * * * - A cada 10 minutos:
0 */10 * * * * - A cada 2 horas:
0 0 */2 * * *
Recursos adicionais
Agora está preparado para automatizar tarefas usando o módulo cron nas suas aplicações Node.js. Para mais informações detalhadas e exemplos, visite o repositório oficial do módulo cron e consulte o diretório de exemplos.