Stars: 568
Forks: 98
Pull Requests: 442
Issues: 546
Watchers: 104
Last Updated: 2023-09-13 14:02:27
A scalable, traceable job queue for background processing large queues of tasks in WordPress. Specifically designed for distribution in WordPress plugins (and themes) - no server access required.
License: GNU General Public License v3.0
Languages: PHP, Shell, JavaScript
Action Scheduler is a scalable, traceable job queue for background processing large sets of actions in WordPress. It's specially designed to be distributed in WordPress plugins.
Action Scheduler works by triggering an action hook to run at some time in the future. Each hook can be scheduled with unique data, to allow callbacks to perform operations on that data. The hook can also be scheduled to run on one or more occassions.
Think of it like an extension to do_action()
which adds the ability to delay and repeat a hook.
Every month, Action Scheduler processes millions of payments for Subscriptions, webhooks for WooCommerce, as well as emails and other events for a range of other plugins.
It's been seen on live sites processing queues in excess of 50,000 jobs and doing resource intensive operations, like processing payments and creating orders, at a sustained rate of over 10,000 / hour without negatively impacting normal site operations.
This is all on infrastructure and WordPress sites outside the control of the plugin author.
If your plugin needs background processing, especially of large sets of tasks, Action Scheduler can help.
To learn more about how to Action Scheduler works, and how to use it in your plugin, check out the docs on ActionScheduler.org.
There you will find:
Action Scheduler is developed and maintained by Automattic with significant early development completed by Flightless.
Collaboration is cool. We'd love to work with you to improve Action Scheduler. Pull Requests welcome.