Node.js: Tâches cron
Automatisez efficacement les tâches dans Node.js avec des tâches cron
👋 Bienvenue dans la documentation Stackhero !
Stackhero offre un environnement Node.js cloud prêt à l’emploi, conçu pour accélérer vos déploiements :
- Déployez en production en quelques secondes avec un simple
git push. Aucun outil supplémentaire ou configuration manuelle n’est requis.- Utilisez votre propre domaine et profitez de certificats HTTPS automatiques, assurant la sécurité de votre application sans configuration additionnelle.
- Sauvegardes automatiques, mises à jour en un clic et tarification prévisible : concentrez-vous sur vos fonctionnalités, Stackhero gère l’infrastructure pour vous.
- Infrastructure privée et dédiée pour une performance constante et une sécurité accrue.
Gagnez du temps et réduisez la charge opérationnelle : votre application peut être en ligne sur le Node.js cloud hosting de Stackhero en quelques minutes seulement.
Lors du développement d'applications Node.js, automatiser des tâches répétitives comme l'envoi d'emails planifiés, le nettoyage des données expirées ou la réalisation de maintenances régulières peut considérablement améliorer à la fois l'efficacité et l'évolutivité. Le module cron, disponible sur npm (cron module sur npm), offre une méthode simple et efficace pour implémenter cette automatisation.
Remarque : Bien que le module npm
node-cronsoit un autre outil disponible pour les tâches cron, ce guide se concentre spécifiquement sur le modulecronet son implémentation.
Premiers pas
Pour commencer à utiliser le module cron dans votre projet, incluez-le comme dépendance en exécutant la commande suivante :
npm install cron
Une fois le module installé, vous pouvez commencer à planifier et gérer des tâches cron dans votre application. Voici un exemple pratique :
const cron = require('cron');
const cronJobs = [];
// Gérer gracieusement l'arrêt de l'application en stoppant toutes les tâches cron planifiées.
// Lors du déploiement de nouveau code ou de l'arrêt de l'application, un signal de terminaison (SIGTERM) est envoyé.
// Cela garantit que l'application arrête toutes les tâches cron en cours avant de se fermer.
process.on('SIGTERM', () => {
cronJobs.forEach(cronJob => cronJob.stop());
});
// Planifier une tâche cron pour s'exécuter chaque seconde.
cronJobs.push(
new cron.CronJob(
'* * * * * *', // Planification : Chaque seconde
() => {
console.log("Ce message apparaîtra chaque seconde.");
},
null,
true
)
);
// Planifier une tâche cron pour s'exécuter chaque minute.
cronJobs.push(
new cron.CronJob(
'0 */1 * * * *', // Planification : Chaque minute
() => {
console.log("Ce message apparaîtra chaque minute.");
},
null,
true
)
);
Comprendre la syntaxe cron
Le module cron utilise la syntaxe standard UNIX cron pour définir les planifications. Voici quelques exemples courants :
- Chaque seconde :
* * * * * * - Toutes les 30 secondes :
*/30 * * * * * - Toutes les 10 minutes :
0 */10 * * * * - Toutes les 2 heures :
0 0 */2 * * *
Ressources supplémentaires
Vous êtes maintenant prêt à automatiser des tâches en utilisant le module cron dans vos applications Node.js. Pour des informations et exemples plus détaillés, visitez le dépôt officiel du module cron et consultez le répertoire des exemples.