While researching on why the wp_options table might be taking so much time, I stumbled upon this: http://www.remicorson.com/too-many-wc_sessions-in-woocommerce/
So WooCommerce has been storing session details in the wp_option tables with entries like _wc_session_xxx and _wc_session_expires_xxx entries. I am yet to confirm this in my case but this might be the case.
But the good news is that WooCommerce’s latest updated “Dashing Dolphin” is dedicated to improving the way sessions are handled:
First, we improved how WooCommerce knows who is on the site and what they have in the cart, known as a session handler. In the past, this was done with the wp_options table. This is fine for smaller stores, but it can be a bit slow for stores with thousands of concurrent users and so we overhauled the way we store temporary data. We’re now storing less temporary data in the database, which speeds up every page load. - https://www.woothemes.com/2016/01/woocommerce-25-dashing-dolphin/
I think I started having this problem with more number of visits and lesser bounce rates. Need to dig deeper!
@blindpet I have been hearing this ever since I started the store but to be really honest, compared to Magento and others, I find WooCommerce very comfortable. Specially, given that I am a WordPress developer at heart, it becomes easier for me to launch new features or build up custom ones quickly. The other advantage I see with WordPress is the SEO friendliness of the website compared to others. Other than WooCommerce, the only big players I see are Magento and Shopify. Which one would you have gone with?
Obviously, when I reach a stage where I am confident that WordPress won’t be able to support the traffic, one can always shift to a custom made platform based on NodeJS to provide the ultimate performance output.
I was on a shared host around 7 months back but when the traffic started to grown, I created a droplet on DigitalOcean and used EasyEngine to setup the server. On the shared host, my frontend use to crash a lot as my MySQL server crashed a lot.
But on DO with EasyEngine’s config, the front end experience has been quite satisfying for me. I am using Nginx, mariaDB, and memcache to cache the object and database. I am yet to use page cache as I was facing some issue with cart updates and yet to use CDN. Would love any other tips on how to improve performance further. 