Node.js: Cron užduotys

Automatizuokite užduotis Node.js su cron užduotimis efektyviai

👋 Sveiki atvykę į Stackhero dokumentaciją!

Stackhero siūlo paruoštą naudoti Node.js cloud sprendimą, kuris suteikia daugybę privalumų, įskaitant:

  • Įdiekite savo programą per kelias sekundes su paprastu git push.
  • Naudokite savo domeno vardą ir pasinaudokite automatiniu HTTPS sertifikatų konfigūravimu, kad padidintumėte saugumą.
  • Mėgaukitės ramybe su automatinėmis atsarginėmis kopijomis, vieno paspaudimo atnaujinimais ir paprasta, skaidria bei prognozuojama kainodara.
  • Gaukite optimalią veikimo ir tvirtą saugumą dėka privačios ir dedikuotos VM.

Taupykite laiką ir supaprastinkite savo gyvenimą: išbandyti Stackhero Node.js cloud hosting sprendimą užtrunka tik 5 minutes!

Kuriant Node.js programas, automatizuoti pasikartojančias užduotis, tokias kaip suplanuotų el. laiškų siuntimas, pasibaigusios galiojimo datos duomenų valymas ar reguliari priežiūra, gali žymiai pagerinti tiek efektyvumą, tiek mastelį. cron modulis, pasiekiamas npm (cron modulis npm), siūlo paprastą ir efektyvų būdą įgyvendinti tokią automatizaciją.

Pastaba: Nors node-cron npm modulis yra dar vienas įrankis cron užduotims, šis vadovas konkrečiai orientuojasi į cron modulį ir jo įgyvendinimą.

Norėdami pradėti naudoti cron modulį savo projekte, įtraukite jį kaip priklausomybę vykdydami šią komandą:

npm install cron

Kai modulis įdiegtas, galite pradėti planuoti ir valdyti cron užduotis savo programoje. Štai praktinis pavyzdys:

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

// Tvarkingai valdykite programos išjungimą sustabdydami visas suplanuotas cron užduotis.
// Diegiant naują kodą arba išjungiant programą, siunčiamas užbaigimo signalas (SIGTERM).
// Tai užtikrina, kad programa sustabdytų visas vykdomas cron užduotis prieš išeinant.
process.on('SIGTERM', () => {
  cronJobs.forEach(cronJob => cronJob.stop());
});

// Suplanuokite cron užduotį vykdyti kas sekundę.
cronJobs.push(
  new cron.CronJob(
    '* * * * * *', // Planavimas: Kas sekundę
    () => {
      console.log("Šis pranešimas pasirodys kas sekundę.");
    },
    null,
    true
  )
);

// Suplanuokite cron užduotį vykdyti kas minutę.
cronJobs.push(
  new cron.CronJob(
    '0 */1 * * * *', // Planavimas: Kas minutę
    () => {
      console.log("Šis pranešimas pasirodys kas minutę.");
    },
    null,
    true
  )
);

cron modulis naudoja standartinę UNIX cron sintaksę planavimams apibrėžti. Štai keletas dažnų pavyzdžių:

  • Kas sekundę: * * * * * *
  • Kas 30 sekundžių: */30 * * * * *
  • Kas 10 minučių: 0 */10 * * * *
  • Kas 2 valandas: 0 0 */2 * * *

Dabar esate pasirengę automatizuoti užduotis naudodami cron modulį savo Node.js programose. Daugiau išsamios informacijos ir pavyzdžių rasite oficialiame cron modulio saugykloje ir peržiūrėkite pavyzdžių katalogą.