This is the third post in a multi-part series on selecting a hosting provider for your Magento site.
This post assumes that you have already assembled the information about your site and are now ready to start comparing bids from various hosting providers.
The following are the question I suggest you ask the hosting companies you are getting bids back from.
Is it shared / virtual server or a dedicated server? – You can have a great performing site on a shared environment or a bad performing site on a dedicated server. If it is a shared environment find out physically where the database & caching processes live. If they are located on separate physical servers and you are just sharing the web server this type of solution can deliver excellent performance. If it is a dedicated server ask the same questions, where do the database and caching services physically live at? It is better from a performance standpoint if the services are separated on different hardware, not just virtual instances.
Do they offer integration with a content delivery network (CDN)? – If they do and will help set it up for you this can significantly reduce the amount of requests coming to your actual web server. The key is to make sure that you understand who will be responsible for actually setting up the CDN and ensure that your site is working with it. Just by turning on a CDN does not mean that you will get the benefits of it.
Backups and recovery process. – I cannot stress how important it is to understand what exactly is being backed up, how long you can access it and the process to recover data. This is not part of the hosting contract that you want to skim over or assume how this process is being done. Your website is your business, it’s how you make money and live your life. If and when someone goes wrong and you need to revert to the backups they need to be current and quick to restore. Here is what I strongly suggest that you get in writing:
- The entire document root of the web servers file system is backed up nightly.
- If you make a significant amount of changes to your product images, or you store images uploaded by clients ask to have the media folder incrementally backed up hourly.
- Ensure that the database is being backup up “live”. This means that a good backup can be taken while the database is up and running and does not require you to manually dump the database for a backup. This is critical as there are hosting companies that will NOT backup the database services live and rely on you to run a database dump to the file system.
- Depending on how many orders you get during the day making a request to have the database backed up hourly is reasonable.
- Find out how long it will take to recover your entire site in case of a failure. Not all backup systems are equal, some can take 24 hours to restore your site from tape.
- What happens during a hardware failure? Do they have exact replacement servers on standby or do they need to be ordered.
Once again I cannot stress how important it is to understand the backup & restore process up front. When a failure occurs you, your site and the revenue your site was generating will be at the mercy of the hosting company’s backup and restore process. Orange Collar has worked with clients on subpar hosting providers that have taken 24 hours to restore a small simple site. During an outage is not the time to start asking these questions. Get all of this in writing in the hosting contact before you sign on the dotted line.
What type of storage devices will your website run on? – Not all hard drives are equal when it comes to performance. The best performing storage are locally attached solid state drives (SSD). You want to ensure that you get the best performing storage devices you can. Disk IO operations have a huge impact on the performance of a Magento site.
Memory, memory, memory. – This is not the area to go cheap and save some money. RAM is essential to the performance of you site. I would recommend a minimum of 32GB of RAM for just the web server requirements. If you must collocate your database and caching on the same physical server you need to have 64GB at a minimum.
Next up in this series will be what software should be installed on your server and why.