Powercache: Reduce Database Load / locking / not responding
Why do you need this module?
Every Opencart site with a lot of categories and lot of products and maybe supports multiple languages will experience
serious performance issues when lot of customers start hitting the website.
If your site is experiencing performance issue, bottlenecks or is non responding that you are hit by the awful opencart
unoptimized SQL request.
This extension limits the number of hit to the database by caching the result of this SQL request.
This problem has been noticed also on Journal3 theme.
For Journal3 we have noticed that each time you write a character in the home page search box (autocomplete), there is a request sent to your server.
These requests are the most expensive.
In a multilingual site (2 languages) with a database having 600 products, 100 categories, the awful SQL query scans 100K records in the database
due to all the SQL sub select queries and SQL joins between tables and table locks.
Indeed, the awful SQL request is looking for the following items:
- product_id in the table product
- rating in the review table
- discount in the oc_product_discount table
- special price in the oc_product_special table
- and other tables for quantity and other details like:
This awful SQL request takes 1sec30 to get results while normal requests should spend 0.01 seconds to get result.
This extension caches the SQL request response for 1 hour.
This extension will easily divide the database load by 50%
- See the video above, how this extension can be tested. For example, try to disable it, do search on front office then see the logs file for SQL DB hits.
- Enable the extension again, do search on front office then see the logs file for spared SQL DB hits.
- For Performance related issues, it’s recommended to try and measure.
- Product Code: powercache