manifest / unclassified / basic-cron-for-action-scheduler
Basic Cron for Action Scheduler
A WordPress plugin to make Action Scheduler work better with non-WordPress cron-based systems.
by dd32 · github.com/dd32/basic-cron-for-action-scheduler · website
★ 0stars
0forks
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/dd32/basic-cron-for-action-scheduler/archive/refs/heads/trunk.zipDeclares an update source (https://github.com/dd32/basic-cron-for-action-scheduler), so updates arrive through the plugin's own updater.
From the readme
Basic Cron for Action Scheduler
A WordPress plugin that makes Action Scheduler schedule each action as its own WP-Cron event, instead of running its own queue and ticking a once-a-minute polling job on every site — load that compounds across a Multisite network and overwhelms external cron runners like Cavalcade.
No options. No UI. Activate it and forget it.
The problem
Action Scheduler ships with its own queue runner. By default it registers a single actionschedulerrunqueue WP-Cron event scheduled everyminute, then on each tick it claims a batch of due actions and runs them in-process (and may also fire an async loopback request on shutdown to keep the batch flowing).
That design assumes WP-Cron is the unreliable, request-coupled "spawn loopback HTTP requests on every page load" cron that ships with WordPress. Polling once a minute and burning through a batch is the right shape for that environment.
But if you're running a reliable, externally-driven cron system — for example Cavalcade — that assumption is wrong, and counterproductive:
- Cavalcade is built around one job per cron event: it picks up a due event, hands it to a worker, the worker runs it, exits. That gives you