- https://www.mediawiki.org/wiki/Manual:Job_queue
- https://www.mediawiki.org/wiki/Manual:Job_queue/For_developers
- https://doc.wikimedia.org/mediawiki-core/master/php/classDeferredUpdates.html
- https://doc.wikimedia.org/mediawiki-core/master/php/interfaceEnqueueableDataUpdate.html
Deferrable updates can choose to implement the EnqueueableDataUpdate interface. Such updates can be automatically converted to a job as-needed.
For example, if the update fails (i.e. due to the rate limit being hit?), MediaWiki will convert it to a job and queue it to try again later.
There are also other situations in which we improve reliability or optimise throughput by proactively converting updates to jobs where possible.