zen cart for contact lenses?
Hi again folks.
I'm now about 3 weeks into setting up a zen cart 1.3.9h installation to sell contact lenses at http://opticalnow.ca
I've managed to get everything set up the way it's needed, but now I have issues with parse time and requests, I'm guessing due to the huge amount of attributes that have to be pulled from the DB before the pages can be displayed.
Contact Lenses are pretty specific, product wise. I've arranged the attributes in two sets to account for selling left and right pairs, using flexible attributes to define the layout.
The Sets of attributes contain values for the following variables:
BC / DIA
Power Range
Adds (if any)
Axis (if any)
Cyl (if any)
Quantity (as a price factor)
Base Price (as a hidden base attribute)
On average, each product has between 80-120 attributes to display on a product page, and most products have a set of attributes that are unique.
I've disabled everything I can find to improve product load speeds, optimized the database, and even removed some javascript. It seems like the cart is trying to do too many queries per product page.
This page for example has a ridiculous load speed.
Parse Time: 17.119 - Number of Queries: 4948 - Query Time: 10.224817272491
HALP! :cry:
Re: zen cart for contact lenses
You will never get great times at GD
Re: zen cart for contact lenses
I get great load times on pages such as categories, the home page, defined pages. What I don't understand is why, on a product page, do my queries to the database seem to inflate exponentially?
These I can live with.
Parse Time: 1.089 - Number of Queries: 185 - Query Time: 0.18311192378235 (home page)
Parse Time: 1.953 - Number of Queries: 617 - Query Time: 0.97392892268372 (a 15 product subcatagory page with lots of medium sized, unoptimized images.)
I have to select around 120 variables on average, to give users enough options to order. Shouldn't that add up to be more like (all inclusive) around 300 queries? does it have to query 5000 times to get 120 attributes?
I will be doing some maintenance tonight to see if there are parsing errors I'm not accounting for. I've been streamlining the CSS and java as much as possible.
Re: zen cart for contact lenses
Quote:
why, on a product page, do my queries to the database seem to inflate exponentially?
I have to select around 120 variables on average
And each is at least one DB query and then the relationships etc
Re: zen cart for contact lenses
Quote:
Originally Posted by
kobra
And each is at least one DB query and then the relationships etc
doesn't this imply that the table structure itself is incorrect?
Re: zen cart for contact lenses?
Quote:
doesn't this imply that the table structure itself is incorrect?
NO, no implication there at all as if that were the case you would most likely be seeing errors
Re: zen cart for contact lenses?
hmmm.... well, no errors that I can see, however I still have to check for warnings and possibly missing files... I have had some trouble with the lightbox 3 plug-in, and removed it. For some reason it conflicted with my new jquery lavalamp menu.
I'm still not sure how fetching 120 attributes can cause 5000 queries, it doesn't add up to me. I have seen references to caching modules and performance mods which reduce the number of queries overall, and really the question to ask, is if all this querying can be done more efficiently, in this open source community, why hasn't it been done yet?
From what I've heard about zen cart 1.4 (or is it 2.0) a lot of these exponentially multiplied queries have been removed in favor of parsing fewer queries.
Unfortunately I have not been able to find a patch or mod to improve this yet, if anyone has any ideas for performance mods for 1.3.9h please let me know.
Re: zen cart for contact lenses?
So to check this out properly, I've installed in the header.tpl:
error_reporting(E_ALL);
ini_set('display_errors', '1');
I have a LOT of warnings, which I have to assume slow things down.
Notice: Use of undefined constant ATTRIBUTES_PRICE_FACTOR_FROM_SPECIAL - assumed 'ATTRIBUTES_PRICE_FACTOR_FROM_SPECIAL' in /home/content/29/7029429/html/includes/functions/functions_prices.php on line 1031
Notice: Undefined index: id in /home/content/29/7029429/html/includes/modules/iC_AthemeV1.3/attributes.php on line 581
Note: I'm also using price factors.
Re: zen cart for contact lenses?
Quote:
Unfortunately I have not been able to find a patch or mod to improve this yet,
Our experiene with these it that while they might reduce querries in number, they do not improve parse times as there is additional non-mysql overhead using them
Quote:
So to check this out properly, I've installed in the header.tpl:
Using 1.3.9h debug files should be generated and located in your /cache dir already
Re: zen cart for contact lenses?
Quote:
Using 1.3.9h debug files should be generated and located in your /cache dir already
they were, but I like to see where they occur on the page to track down the issues. :frusty: