Past two days has been a nightmare. We recently migrated all of our websites to Amazon Web Services (AWS), and the speed has been good. We love it. The infrastructure is excellent and so is the service we’re getting. I wouldn’t have a lot to say about their support, though. Unless you are a reasonably big enterprise which is spending a lot of dollars, you can’t afford their support packages. What I suggest from my personal experience is to subscribe to their developer support. If you get into issues relating to operating websites on their servers, they usually point you in the right direction. You will get a response generally within 24 hours which is ok.
The reason why I am writing this post is not to address that. It’s actually due to our experience with Magento. Over the past two days, I have learned so much about Magento E-Commerce Platform. One of our client who runs one of the biggest online pharmacies in New Zealand – YourChemist.co.nz hosts with us. The database is big, and so are the files. Migrating to AWS took a while, but we got there eventually. Since this website was so busy all through the day, the only time we could migrate had to be at midnight when it has the least amount of site traffic.
After migrating, we started noticing a significant problem. The speed of Magento’s backend or as some would address it as admin panel was terrible. So I did my little research on tackling this issue.
We tried everything…
- AWS Elasticache
- Local Memcache
- Other Compression Techniques
- Using CDN
- Setting Database to store Sessions in
- Local Redis and Elasticache Redis
- Using SSD disks for Storage
- Using Flat Catalog
- Using Bigger EC2 instance
- Moving Database to a Large Amazon RDS instance
- Changing MySQL parameters
- Enabling Magento Compiler
- Log Cleaning for Magento Database
- Magento Database Repair
- Setting Magento on Manual Indexing Mode
- Removing Unused Extensions
- Varnish HTTP Accelerator
- OpCode and Its Magento Specific Configuration
- Various Web Server Parameters
- Full Page Cache Extensions
- Various PHP Parameters
- Analysing Slow Query Logs
- Changing File Permissions
- Indexing Specific Tables Manually
- Many more other techniques.
You name it; we’ve tried it! So if you are looking to speed up your Magento installation and you haven’t got an extension issue like us, then try some of the techniques above. Not to mention but we even tried Desktop Magento manager to process orders because it was very slow and our client and their staff were getting frustrated by this slow Magento Backend. It was taking anywhere from 30sec to nearly a minute for orders to populate or just to browse pages within the backend.
After giving up all our hopes, we then thought we’d once again look into the extensions installed and see if we can disable them one by one and then check for any speed improvements. In the process of doing that, we also looked at PHP slow logs. We found an extension which was stopping all our scripts from running. This was known as “SEO Rich Snippets” extension from Robogento. Their extension was validating a key with their servers. While this was happening, Magento had to just to sit idle and wait for the response. Right after we disabled it, the speed was blazing fast.
It was a good experience for us. I am pretty sure we will be releasing an eBook on increasing your Magento frontend and backend speed. So do look out for that. So the way we switched this extension off was by performing the following:
- You should then see a file named “Robogento_SeoRich.xml“.
- Open it and change <active></active> atrribut from “True” to “False“.
- Save it and upload it back to that folder.
- Head to your Magento backend panel and Clear the cache from Cache Management.
We hope this will be useful to someone experiencing a similar issue with a slow backend. If you have a fast frontend (customer facing) but a slow backend (Admin panel), then a plugin is most likely what is causing it. It always pays to check.