Queue handling in asynchronous publishing
Asynchronous publishing moves the publishing of content out of the editor's request: when an editor presses Publish, the draft is put in a publishing queue in the database, and a separate process, the daemon ezasynchronouspublisher, publishes it in the background, several at a time. The editor sees the status of the publication, and can go on working. It helps sites where many editors publish at the same time, or where publishing triggers long work (many locations, large cache clears, workflows).
The feature is off by default. It needs PHP's pcntl extension for the daemon, so it runs on Linux and other Unix systems, not on Windows.
The pages of this section
- Enable the publishing queue functionality: the settings in content.ini.
- Starting the daemon manually and Setting up the asynchronous publishing service.
- Various configurations: one daemon per database.
- Publishing objects asynchronously: what editors see.
- Make prioritizations in the queue via filtering hooks: filters, hooks and the queue reader, for developers.
In short
# settings/override/content.ini.append.php [PublishingSettings] AsynchronousPublishing=enabled PublishingProcessSlots=10
# as the web server user, in the installation root php bin/php/ezasynchronouspublisher.php -n
The daemon writes its log to var/log/async.log when it runs as a daemon.
In this section
- Enable the publishing queue functionality Enabling the publishing queue in content.ini [PublishingSettings]: slots, polling, clean-up and publications that are never queued.
- Setting up the asynchronous publishing service with an in... Running the publishing daemon as a service: the shipped init scripts, their configuration and a systemd unit.
- Starting the daemon manually Starting the ezasynchronouspublisher daemon by hand: options, PID file and log.
- Various configurations How many publishing daemons a setup needs: one per database.
- Publishing objects asynchronously What editors see when content is published asynchronously, and the states of a queued publication.
- Make prioritizations in the queue via filtering hooks Filters, preQueue and postHandling hooks and the queue reader of the publishing queue.
Contributors
- Geir Arne Waaler
- Graham Brookins Updated Maintainer
Comments
Add a comment