Shopping Cart Operations > Tips and Tricks
Database Performance for a lot of Products
jcschott:
My site is product heavy (currently have 6,400 products) and I am seeing ok performance on the UI and checkout process but adding or editing products from the admin section routinely will spike my RAM usage coming from the Database performance causing timeout/500 errors to be generated. Before I upgrade my hosting again or split my DB and APP to different servers would figure if anyone else had a high product store using abantecart and any other performance tips they could provide.
Current Virtual Machine provided by hosting provider:
6 CPU Cores
8 GB RAM
250 GB SSD Storage
10.6.20-MariaDB - MariaDB Server
Apache 2.4.62
Basara:
Hello.
Could you please let us know the PHP and AbanteCart versions, number of categories, and storefront template?
jcschott:
PHP Version 8.3
AbanteCart Version 1.4.0
Template: Novator
Categories: 212 (17 parent categories, the rest childs)
The front end does ok and loads without resource spiking for the volume we get currently (4-5 concurrent users is generally the peak) but as soon as I start to edit a product in the admin section even with no current users hitting the site it causes the DB to spike in resources and often leads to 500 errors/timeouts for the front end.
abolabo:
--- Quote from: jcschott on December 04, 2024, 12:20:50 PM ---PHP Version 8.3
AbanteCart Version 1.4.0
Template: Novator
Categories: 212 (17 parent categories, the rest childs)
The front end does ok and loads without resource spiking for the volume we get currently (4-5 concurrent users is generally the peak) but as soon as I start to edit a product in the admin section even with no current users hitting the site it causes the DB to spike in resources and often leads to 500 errors/timeouts for the front end.
--- End quote ---
can you run this sql-query in the same time with product editing?
SHOW PROCESSLIST;
It will show list of all queries and you can define what current sql-query overloads you DB.
But probably DB is not a cause.
Database connection can be expired because of some other thing's processing, for example, resizing of images. Resize works in the same http-request and connection to db is open at this point and waiting (php-lock).
You can try to enable debugging int the system->settings->system to see timings.
Or you can use xdebug profiling (for advanced users).
Probably you have some huge images of product that cannot be resized quickly or your host disk is slow etc..
Or some 3dparty extension slow down your admin..
Also you can look into cache speedup side.. redis or memcached.
Some different causes can be there.. it's require investigation.
Basara:
Hello.
I wanted to mention that Managed AbanteCart Support can help with investigating these performance issues. You can reach out to them for more detailed assistance here https://managed.abantecart.com/index.html#contact
Navigation
[0] Message Index
[#] Next page
Go to full version