Title: Action Scheduler
Author: WordPress VIP Documentation
Published: April 6, 2023
Last modified: December 26, 2023

---

 1. [WordPress on VIP](https://docs.wpvip.com/wordpress-on-vip/)
 2. Action Scheduler

#  Action Scheduler

[Action Scheduler](https://actionscheduler.org/) is a scalable, traceable job queue
for background-processing large queues of tasks in WordPress. Because it is built
to process many actions within one request, it can be more efficient than using 
individual [WordPress Cron](https://developer.wordpress.org/plugins/cron/) events(
e.g. processing 100 WooCommerce subscription renewals with a single cron event, 
rather than running 100 individual cron events). On VIP, Action Scheduler is able
to leverage [VIP’s Cron infrastructure](https://docs.wpvip.com/wordpress-on-vip/cron-control/)
for even better performance.

Action Scheduler is designed for:

 * Processing large volumes of actions concurrently
 * Executing long-running tasks
 * Plugins that extensively use cron events (e.g. [WooCommerce](https://woocommerce.com/))

When triggered, Action Scheduler checks for scheduled actions that have a due date
at or before the current point in time (“due now”). Action Scheduler processes scheduled
actions in “queues.” By default, a queue is spun up to process events on a recurring
60-second cron event called `action_scheduler_run_queue`. An “async queue” on frontend
requests is also spun up, but on VIP, the front-end async queue is disabled in favor
of a Dynamic Queue.

The Dynamic Queue greatly increases the number of actions that can be processed 
in a given amount of time. It is designed to manage and run multiple Action Scheduler
queues at the same time. The Dynamic Queue checks how many actions are “due now”
approximately every 120 seconds. The number of queues that are needed to complete
the actions will be determined based on the number of actions that are found. The
Dynamic Queue then registers the necessary number of one-time cron jobs that will
be allowed to run in parallel. When these cron jobs are run, they each start up 
their own Action Scheduler queue.

## Interacting with Action Scheduler

For Action Scheduler to be available on a site, it must either be [installed as a library or as a plugin](https://actionscheduler.org/usage/).
Even when Action Scheduler is installed as a plugin, no user interfaces for scheduling
actions will be available, and interactions must be made via code.

Some plugins—like WooCommerce—load the Action Scheduler library as a dependency.

### WordPress Admin dashboard

When installed, an administration screen for Action Scheduler is available in a 
site’s WordPress Admin dashboard. The Action Scheduler screen provides the ability
to monitor, debug, and manually trigger scheduled actions.

Access the screen as a logged in user:

 1. Navigate to the site’s WordPress Admin dashboard.
 2. Select **Tools **from the lefthand menu.
 3. Select **Scheduled Actions**.

For [VIP sites with WooCommerce](https://docs.wpvip.com/woocommerce/) installed 
and enabled, the Action Schedule screen can also be accessed as a logged in user:

 1. Navigate to the site’s WordPress Admin dashboard.
 2. Select **WooCommerce **from the lefthand menu.
 3. Select **Status**.
 4. Select **Scheduled Actions**.

### VIP-CLI

[Use VIP-CLI](https://docs.wpvip.com/vip-cli/) to run Action Scheduler’s custom 
WP-CLI commands to process actions. Refer to [Action Scheduler’s documentation for their custom WP-CLI commands](https://actionscheduler.org/wp-cli/)
to learn which commands are available and how to use them.

Last updated: December 26, 2023