Our Magento dev team works with Magento for 5+ years to the date, helping customers to refine websites and perform code review and website analysis for current Magento stores to find out bugs and speed & page loading issues.
There were some common mistakes found for a vast majority of cases, where we have complaints for low Speed & Page loading time resulting to the fact that visitors close browser tab right after entering the page.
WHAT IS CAUSING LOW SPEED
Hosting + server set up.
In many cases decision regarding hosting is taken by the owner and it is rather based on the price, then on the system requirements. And for Magento ecommerce, especially for Magento 2, hosting is very important.
Hosting shall follow system requirements, and in many cases what is good for Joomla or Wordpress website is not good enough for Magento stores.Whatever hosting you choose it should match official requirements listed here (Official Magento System Requirements page):
WHAT WE RECOMMEND
We would recommend for best results:
- PHP 7 (7.0.2 up to 7.1.0, except for 7.0.5);
- RAM: 1024 or higher;
- built-in caching functionality enabled;
- memcached and Varnish are also highly advisable
Do not forget: starting from version 2.1.0 Magento will not support PHP 5.5.x versions anyway.
Someone said: "Almost everything does not work as expected".
Description:After initial setup several pages may crash unexpectedly, or nothing works correctly at all
What Causes Issues
There are few key factors that may affect Magento:
- Caching not enabled, or not configured properly;
- Same for CRON jobs;
- .htaccess file configured improperly
WHY CRON IS SO IMPORTANT
Cron is a system daemon used to execute desired tasks on scheduled time. In English, Cron is responsible for tracking website visitor activities, sending emails and database cleaning (it helps to clean up logs on regular basis).
Magento tracks statistics for a vast majority of user activities and if Cron was not correctly set up, it comes to an extended amount of data saved under database and if those data was not cleaned on regular basis - your page download time will be increasing significantly.
We noticed that in many cases our tech review team found out that proper CRON setup sometimes have been completely missing. We faced one website with more than 8 GB (!!!) of cache saved, with client wondering why pages are loading so slowly.
And finally, when we are talking about default .htaccess code shipped with Magento 2, not any Apache declaration may be useful.
Some of them may be really not necessary, for example:
...or useless / not necessary too...
...because this features in most cases always enabled by default...
...or even erroneous...
php_value memory_limit 768M
... because it does not really match the real available amount of RAM from your hosting provider package or may be just ignored.
Sometimes some declarations may lead to 500 Server Error due to unsupported features by current Apache installation:
(this feature was completely inaccessible on one of the hosting provider)
We hope our article would be helpful for business owners who is running Magento store (for cases when you have issues with page load speed).
If you have any question, please send me your message at firstname.lastname@example.org