@fastify/schedule
Fastify plugin for scheduling periodic jobs. Provides an instance of toad-scheduler on fastify instance.
Jobs are stopped automatically when the fastify instance is stopped.
Getting started
First install the package:
npm i @fastify/schedule toad-scheduler
Next, set up the plugin:
const fastify = require('fastify')();
const { fastifySchedulePlugin } = require('@fastify/schedule');
const { SimpleIntervalJob, AsyncTask } = require('toad-scheduler');
const task = new AsyncTask(
'simple task',
() => { return db.pollForSomeData().then((result) => { }) },
(err) => { }
)
const job = new SimpleIntervalJob({ seconds: 20, }, task)
fastify.register(fastifySchedulePlugin);
fastify.ready().then(() => {
fastify.scheduler.addSimpleIntervalJob(job)
})
For more detailed instructions, see the documentation of toad-scheduler
.