Comment choisir son hébergement Drupal
Voici quelques conseils basés sur notre expériences auprès de nombreux clients ces dernières années. Passons en revue les attentes et les facteurs déterminants à considérer lors du choix d'un nouveau partenaire.
Also hosting serves as the lowest few layers of the web stack, who to blame when something goes wrong? It does matter, accountability versus independence, can you choose both?
Les attentes du client
Le client possède t-il l'expertise en interne pour gérer une application web ? La réponse à cette question permettra d'orienter le choix de la solution. Les facteurs suivants permettent d'influencer le choix :
- similarité avec les couches logicielles déja utilisées en interne
- élasticité et performance de l'infrastructure
- niveaux d'isolation avec les réseaux publics
- qualité des interfaces de contrôle
- niveaux d'automation sur toutes les couches
Facteurs pour choisir l'hébergeur
Although you can choose a shared hosting service for your Drupal site (see below for a good example), usually we can’t recommend that. Even if the site is simple, often it means that the provider won’t be able to integrate it to the usual deployment process, also it might limit the possibilities of adding new, advanced features in the future (various binary libraries - wkhtmltopdf for example, separately running services that must be installed on OS level, chat servers for instance). And these days the price difference is not huge. Dedicated physical servers are usually considered out of budget based on plenty of feedback from clients, however when performance really matters, we can warmly recommend those. So what we can usually recommend is a dedicated virtual server (VPS) with full access. With smart configuration, it offers adequate performance, the price can be low and the functionalities are not limited, nearly everything can be done, no strange rules apply like on a shared system. With a VPS, we will satisfy the provider’s team who is responsible for deployment, if there are in-house regulations on client side, those can be enforced very likely too. But then, how to choose such a provider and service?
Maybe it’s only known among tech folks, there’s a very useful comparison site, Netcraft, which monitors the reliability of service providers. They compose the list of most reliable hosting companies from time to time, if a company can consistently grab good places, it might be a good candidate. At Inovae, we bought dedicated physical servers when we just started the company based on this list, we were satisfied with the overall service and the reliability for long years.
When we talk about renting a virtual server, it’s a must to talk about performance issues. The server is shared, it’s merely an illusion that it’s dedicated, the dedication ends at the software level. We had a case at a very well respected hosting company that the site of our client showed poor performance, we measured the disk throughput, and when we complained at the support about the terrific value, they told us that it’s normal, very likely another server on the same physical box caused this. We need to keep this in mind when choosing a VPS. So the best tactics is to pay for the smallest possible interval and test it across that period. The most problematic can be the disk performance and the network bandwidth between us and the provider. We often use hdparm and fio for this purpose, it only measures disk performance in a simple way, but when we see that a site is struggling, very often these tool can point out the problem. Usually the Drupal shop happily monitors performance indicators for you during a week or a month, if it provides good values consistently, then it is very likely it will fit the needs.
High level management tools
Check the provided management interface carefully. Normally you can perform all the actions there, that you ever need. Some providers still rely on semi-automated processes, human interaction takes time, available in business hours, the best is to avoid it. Smaller providers might only provide a contact person, is it surely a good choice? Isn’t it better to add more RAM to the system with a few clicks or to be able to access an emergency console? In case of urgency, it will matter a lot.
Known good choices
We have a few providers that we can recommend, each of them is for completely different target audience, but we trust them as a suitable choice.
We have some clients that uses Rackspace, it’s a leading hosting company. The biggest strength is reliability, we can hardly remember any downtime and it’s not a subjective thing, this company is on Netcraft’s toplist consistently for years. This quality comes at a price, but if the nature of your business requires it, we can recommend them, the best mix is the cloud virtual server with dedicated disk. It can help to get rid of the typical disadvantage of virtual servers - the poor disk I/O. Not many VPS providers allows you to get such a combination.
For several years, we run virtual servers here. It’s cost effective, the control panel allows you to do everything by yourself, you can choose the geographic location (do I need to say that some clients prefer to keep the site in Europe?), the servers are freely scalable. And in our case, we like the coherency of the management when a client chooses that, the overhead will be minimal when we’re asked to do configuration changes. The reliability is not the top strength of this provider, there can be a few downtimes per year. Usually we combine it with Cloudflare that can decrease the server load and serves a cached version when the server is not available.
When the cost is the ultimate deciding factor, we can recommend Dreamhost. It can be as low as 8.95$/month (taxes and a domain name included!) and it offers unlimited disk space. It’s a shared hosting, it’s not an optimal solution, but it’s super flexible. They provide full SSH access, very likely the Drupal shop will be able to integrate it to the deployment process. Do not expect first class performance and reliability, but you can host an unlimited number of Drupal sites for that price on it.
We are very interested in learning from your experience. Feel free to share a little story by posting a comment. We are especially interested in Swiss hosting companies that can provide similar services, like the suggested ones, at a not too expensive rate. Today more and more companies are interested in keeping the data geographically close as we did a few years ago to move all servers to France from the US.
Accountability vs. independence
Why shouldn’t we advocate fully managed solutions, turnkey solutions, tailored for Drupal from another company too much? There is a tradeoff between accountability and independence. In several cases, we experienced the uncomfortable situation when the hosting company (with professional management) blamed the application level, but we saw infrastructure level problems. It’s not comfortable for the website owner as she has the feeling that neither of the parties are willing to solve the problem and we feel that we do not have the full power to solve the problems. That’s why we recommend to put these responsibility in one hand which can’t be the hosting company where usually there’s no Drupal skills, but even if it’s the case, the depth of the project is unknown for them. Is the website slow? Does it matter for you if it’s the misconfiguration at the OS level or a not optimized part in Drupal? If the Drupal shop could be involved in choosing the provider and configure the things, the responsibilities would be much more clear, it would be easier to react and handle the situation in an efficient way.
And now, about independence. We think in the long run, it’s more important that the client can account the Drupal shop for almost everything and they can have total control. This means that handing over the site to another company would require more job - but usually both parties want to avoid this costly and long process. We see however really valid reason for independence: at huge organizations and companies with its own internal IT services, they want as coherent installations as possible, there the independence is much more important understandably.