Jump to content
thirty bees forum
  • 0

Improving Performance for Product with Many Combinations


Rhapsody

Question

Back in April I posted about the Full Page Cache Slow When Logged In and learned that full page cache was not enabled for logged in users without a code change. I'm posting here to seek advice on how I might improve the performance for products that have many combinations.  If the user is logged out and selects the product when full page cache is enabled, the page loads quickly.  If the user is logged in or full page cache off, it takes over 30 seconds to load the same page.

I'm using Thirty Bees 1.1.x (Bleeding Edge), @topklad's Community Theme that I have further modded, hosted on GoDaddy running PHP 7.3 as an online Membership and Race Registration system for sailors.  There is a product that offers a package with annual membership plus the ability to order up to 6 races a member may sail.  Associated with each race are 3 potential classes a member may enter for each race. Additionally, a dropdown is used to acknowledge the mandatory liability waiver needed to enable Add to Cart. Stock management is used so that 0 quantity may be assigned for conditions to prevent adding to cart unless the customer selects all the required options. 

Here are the details with the actual product link.

  1. There is a product override that displays information about the member's boat using custom fields in the users profile.  When the user is not logged in, it displays a message asking the user to log in and verify their information. 
  2. Product has 7 options the customer must choose
  3. The first 6 options have a unique attribute that are assigned the attribute type "dropdown list"
  4. Each dropdown list is assigned with 4 options to choose. The first option (default) "Select a Class" has a stock level of 0 making it unavailable to add to cart unless an option is selected
  5. The last dropdown forces the customer to acknowledge a liability waiver with the default "Please acknowledge" having a stock level of 0 making it unavailable to add to cart until "I agree" is selected

I need to capture all these responses in order to make the list of boat sailing in each class for a given race.  That is all done via a separate WordPress plugin I've written that reads from the Thirty Bees database and manipulates the data to display a "Scratch Sheet".  This is a list with registered boats for each race by class selected and also uses information about the boat (see #1 above) stored in the profile.

How can this be made more responsive so it loads quickly?

I'm open to suggestions including an alternate way of setting up the product.  Is another way to generate / use dropdowns that would speed it up?  Any mods that could be done to pre-cache the dropdowns for customers whether or not they are logged in? 

Edited by Rhapsody
Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...