Defining Job Processors
pulse.define(name, processor, options)
pulse.define(name, processor, options)Example Usage
const pulse = new Pulse();
// Define a job type for sending emails
pulse.define('sendEmail', async (job, done) => {
try {
await sendEmail(job.data);
// Mark the job as completed
done(); // or done(undefined, 'Success');
} catch (error) {
console.error('Failed to send email:', error);
done(error);
}
}, {
concurrency: 5,
lockLimit: 2,
priority: 'high',
lockLifetime: 300000, // 5 minutes
shouldSaveResult: true,
attempts: 5, // Retry up to 5 times
backoff: {
type: 'exponential',
delay: 2000, // Start with a 2-second delay between retries
},
});
Parameters
Returns
Last updated