Delayed jobs

Delayed jobs are jobs that will wait the specified amount of time before they are made available to any existing worker.

A delayed job is simply added to a queue by specifying the "delay" option, which accepts the number of milliseconds to wait before being processed.

Lets expand our job options interface with delay:

interface JobOpts {
  delay: number; // Milliseconds
  // ... More opts
}
curl --location 'http://mydomain.dev/queues/my-queue/jobs' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer my-secret-token' \
--data '[{
	"name": "paint-red",
        "data": {},
        "opts": {
        "delay": 5000
}]'

The above snippet will add a job to the queue that will wait 5 seconds before it is attempted by an available worker.

Last updated