Version 5 supported
This version of Silverstripe CMS is still supported though will not receive any additional features. Go to documentation for the most recent stable version.

Queued jobs

This module provides a framework for defining and managing jobs that can be run asynchronously in the background. It allows for scheduling, deferring long-running tasks, and managing them through the CMS.

Installation

composer require symbiote/silverstripe-queuedjobs

GitHub repository

https://github.com/silverstripe/silverstripe-queuedjobs

Overview
An introduction to the queued jobs module, covering installation, basic usage, and key concepts like job runners, cleanup, immediate jobs, and job states
Defining Jobs
Creating custom queued jobs, covering the API, constructors, job state management, multiple steps, and advanced setup patterns.
Default Jobs
Automatically created default jobs
Immediate Jobs
Configuring immediate jobs to run as soon as they are queued
Dependent Jobs
Creating jobs that depend on the completion of other jobs
Configuring Runners
Configuring alternative job runners to improve throughput
Performance
Improving the performance of queued jobs
Troubleshooting
Common issues and resolutions
Unit Testing
Writing units tests for queued jobs