Magento Performance & Rescue
Written by: David Wilkinson, On: Thursday 8th March 2018
In the last fortnight we have been involved in 2 Magento rescue projects. Both sites were performing terribly and hurting conversion rates and usability of the sites, and in one case making the site virtually unusable.
Both clients approached us with a similar story, along the lines of ‘our provider has told us this is just the way it is’ ‘magento is slow’ ‘magento has memory holes’. It’s always frustrating to hear these views as it is simply not true.
Magento is a significant piece of software, feature-rich and deeper than most ecommerce systems by some margin. With this incredible scope comes an important reality check: Mistreat it and it will bite you. There are a million things you can do wrong in Magento, so it’s imperative that your developers and hosting providers know the platform and know it well.
So what was wrong?The Magento 1 site
The Magento1 site we took over was taking on average;
1611ms to load the home page 1598ms to load a category page
We migrated the codebase to our new Magento optimised dedicated server and found the same level of performance. We scrutinised the theme, which was ok (not great) which led us to check all the installed modules. Disabling them one by one we found a module from a well known module developer which was causing fireworks of activity on every page load. Digging deeper into the code of the module we discovered lots of unnecessary event observers, including;
By modifying the module we were able to reduce page load time by over 90%;
160ms to load the home page 155ms to load a category page
The Magento 2 site
The Magento2 site we took over was on taking on average;
7346ms to load the home pag 7201ms to load a category page
We migrated the codebase to our own staging server to analyse what was going wrong and found multiple issues, including;
- Full page cache was broken with cacheable=false in layout xml (see earlier blog post on that one)
- Multiple module issues with poorly written code, outdated versions and broken installations
There was also a fundamental hosting issue, with the provider claiming the client was getting a 26 core VPS with 10GB of ram, which we seriously doubt was the case.
Having resolved the issues and moving the clients to a 4 core VPS with 6GB of ram, perfect for the needs of the site, the site has achieved a reduction in page load time of over 95%!
298ms to load the home page 280ms to load a category page
So there you have it. If your Magento site is running slow and your provider is telling you it’s ‘just the way it is’, get in touch for a no-obligation second opinion.