Woocommerce Bookings working extremely slow – how to speed up?
-
Hello,
I’m working on a bookings site where I’m selling slots of time to customers (basically a sporting activity). WP 4.4.1, WC 2.4.12, Bookings 1.8.7 and a bunch of other plugins as well.
For each day there are ~10 time slots bookable, and for each slot there are ~30 available places to book. There are ~5 products sold on the site, and 3 different resources. The site is hosted on Siteground Cloud Hosting (a VPS). I have some 500 visitors per day on the site. I would consider this as a quite small setup.
My problem is that both the back-end and all bookings-related pages load incredibly slow. The response times vary between 10-20 seconds. If I disable the WC-Bookings, everything loads nicely, so the problem seems to be related to the plugin. You can see the live site with one problematic product at (https://www.irtimaasta.fi/tuote/kertalippu-lapset/)
What I’d like to know is if anyone else is experiencing these issues and if anyone has been able to fix these? I’ve posted couple of tickets on Woothemes, but they are extremely slow in responding (so far nothing)
What I’ve tried so far is:
I’ve tested with disabling the Heartbeat (see discussion in https://support.woothemes.com/hc/en-us/community/posts/201220087-Woocommerce-Causes-Slow-admin-ajax-php-Load-Times), and limiting the WC-scripts to load only on WC-pages (see https://gist.github.com/DevinWalker/7621777), but these did not have visible effect, as the problem seems to be with Woocommerce pages and/or WP itself.I think this issue first appeared with WP 4.2 (see https://www.ads-software.com/support/topic/woocommerce-extremely-slow-after-wordpress-42-update/page/2?replies=85), but I haven’t yet tried solutions proposed there.
My database seems to be of manageable size, but I’ll post the largest table sizes here just in case:
– wp_options table ~21 k rows with some 11k transients (I didn’t yet delete expired transients)
– wp_postmeta table ~150 k rows
– wp_woocommerce_order_itemmeta table ~150 k rowsBased on Query monitor’s slow queries
– WC_Bookings_Controller::get_bookings_in_date_range_query(),
– WC_Bookings_Controller::get_bookings_for_objects_query())
it seems that Bookings is going through all dates and slots before showing anything on screen. The same behaviour occurs even if the calendar is not visible by default. However, the db logs indicate “SELECT meta_key FROM wp_postmeta GROUP BY meta_key HAVING meta_key NOT LIKE ‘\\_%’ ORDER BY meta_key LIMIT 30” queries being also slow (see discussion in WP4.2 related problems (link above)So far I haven’t found any definite answers on how to approach fixing this issue, so I’d appreciate all tips and pointers to the right direction.
tl;dr
Is there anything that can be done to speed up Woocommerce (2.4.12) Bookings (1.8.7) extension, which is ridiculously slow?Thanks in advance,
Aleksi
- The topic ‘Woocommerce Bookings working extremely slow – how to speed up?’ is closed to new replies.