Node.js: Cron-Jobs

Automatisieren Sie Aufgaben effektiv in Node.js mit Cron-Jobs

👋 Willkommen in der Stackhero-Dokumentation!

Stackhero bietet eine einsatzbereite Node.js Cloud Lösung, die zahlreiche Vorteile bietet, darunter:

  • Deployen Sie Ihre Anwendung in Sekundenschnelle mit einem einfachen git push.
  • Nutzen Sie Ihren eigenen Domainnamen und profitieren Sie von der automatischen Konfiguration von HTTPS-Zertifikaten für erhöhte Sicherheit.
  • Genießen Sie sorgenfreie automatische Backups, Ein-Klick-Updates und eine einfache, transparente und vorhersehbare Preisgestaltung.
  • Erhalten Sie optimale Performance und robuste Sicherheit dank einer privaten und dedizierten VM.

Sparen Sie Zeit und vereinfachen Sie Ihr Leben: Es dauert nur 5 Minuten, um die Node.js Cloud Hosting Lösung von Stackhero auszuprobieren!

Bei der Entwicklung von Node.js-Anwendungen kann die Automatisierung von sich wiederholenden Aufgaben wie dem Versenden geplanter E-Mails, dem Bereinigen abgelaufener Daten oder der Durchführung regelmäßiger Wartungen sowohl die Effizienz als auch die Skalierbarkeit erheblich verbessern. Das cron-Modul, verfügbar auf npm (cron module on npm), bietet eine einfache und effektive Möglichkeit, solche Automatisierungen umzusetzen.

Hinweis: Während das node-cron-npm-Modul ein weiteres verfügbares Werkzeug für Cron-Aufgaben ist, konzentriert sich dieser Leitfaden speziell auf das cron-Modul und dessen Implementierung.

Um das cron-Modul in Ihrem Projekt zu verwenden, fügen Sie es als Abhängigkeit hinzu, indem Sie den folgenden Befehl ausführen:

npm install cron

Sobald das Modul installiert ist, können Sie beginnen, Cron-Jobs in Ihrer Anwendung zu planen und zu verwalten. Hier ist ein praktisches Beispiel:

const cron = require('cron');
const cronJobs = [];

// Behandeln Sie das Herunterfahren der Anwendung ordnungsgemäß, indem Sie alle geplanten Cron-Jobs stoppen.
// Beim Bereitstellen neuen Codes oder Herunterfahren der App wird ein Beendigungs-Signal (SIGTERM) gesendet.
// Dies stellt sicher, dass die App alle laufenden Cron-Jobs vor dem Beenden stoppt.
process.on('SIGTERM', () => {
  cronJobs.forEach(cronJob => cronJob.stop());
});

// Planen Sie einen Cron-Job, der jede Sekunde ausgeführt wird.
cronJobs.push(
  new cron.CronJob(
    '* * * * * *', // Zeitplan: Jede Sekunde
    () => {
      console.log("Diese Nachricht erscheint jede Sekunde.");
    },
    null,
    true
  )
);

// Planen Sie einen Cron-Job, der jede Minute ausgeführt wird.
cronJobs.push(
  new cron.CronJob(
    '0 */1 * * * *', // Zeitplan: Jede Minute
    () => {
      console.log("Diese Nachricht erscheint jede Minute.");
    },
    null,
    true
  )
);

Das cron-Modul verwendet die standardmäßige UNIX-Cron-Syntax zur Definition von Zeitplänen. Hier sind einige gängige Beispiele:

  • Jede Sekunde: * * * * * *
  • Alle 30 Sekunden: */30 * * * * *
  • Alle 10 Minuten: 0 */10 * * * *
  • Alle 2 Stunden: 0 0 */2 * * *

Sie sind nun bereit, Aufgaben mit dem cron-Modul in Ihren Node.js-Anwendungen zu automatisieren. Für detailliertere Informationen und Beispiele besuchen Sie das offizielle Cron-Modul-Repository und schauen Sie sich das Beispielverzeichnis an.