High-traffic WooCommerce: disable WP-Cron and switch to real server cron?
We’re currently troubleshooting load spikes on a fairly large WooCommerce shop.
What we see in the logs:
- several thousand
wp-cron.phprequests per day - many dynamic requests to
admin-ajax.php, cart and Woo AJAX - a noticeable number of 499 responses under load
- Action Scheduler itself is working, and the number of scheduled daily actions is not huge
- around 39 scheduled actions run daily, roughly 15 of them are CTX Feed related
- around 1,370 Action Scheduler jobs completed successfully yesterday
- the Action Scheduler queue runner itself also showed many aborted requests in the access log
Cloudflare is now in front of the site and already reduces a lot of static traffic, but wp-cron.php, admin-ajax.php and /cart/ are still among the busiest uncached dynamic paths.
So I’m considering disabling WP-Cron with:
define('DISABLE_WP_CRON', true);
and replacing it with a real server-side cron job, probably every 5–15 minutes.
For those running larger WooCommerce stores:
Did switching from WP-Cron to a real server cron noticeably reduce server load or 499/timeout issues for you?
Or did it mainly make cron execution more predictable without changing overall resource usage much?
I’m especially interested in real-world experience from stores with substantial bot/crawler traffic and lots of dynamic WooCommerce requests.