Sluggishness with 180k posts
-
My website has about 180,000 posts. Apparently the way the plugin is configured, it regularly parses through all 180,000 posts, which causes sluggishness and instability. I think. Honestly, I’m not certain.
I shared some lines from my slow log file with ChatGPT, and this was its response:
—
The Post Expirator plugin is invoking WooCommerce Action Scheduler … and Action Scheduler is literally calling sleep() inside an admin-ajax request.
sleep() /wp-content/plugins/post-expirator/lib/vendor/woocommerce/action-scheduler/classes/ActionScheduler_AsyncRequest_QueueRunner.php:53
That means:
- Every time WordPress triggers certain async tasks (expiring posts, cleaning batches, etc.),
- Action Scheduler fires an admin-ajax request,
- And that request blocks a PHP-FPM worker for however long it sleeps.
On a large site—millions of pageviews and constant cron events—this is disastrous. You get:
- Stalled PHP-FPM workers
- Admin pages that sit and spin
- A backed-up action queue
- Slow or entirely hung /wp-admin operations
Action Scheduler is fine on medium sites.
On massive sites, coupled with Post Expirator and hundreds of queued tasks, it can rail your server.And since Post Expirator bundles its own copy of WooCommerce’s Action Scheduler, you get duplicate schedulers, duplicate task queues, and needless worker duplication.
Diagnosis: Action Scheduler + Post Expirator async queue is clogging PHP-FPM with sleeping workers.
—
I am not using WooCommerce on my website.
Thoughts on how to address this?
You must be logged in to reply to this topic.