The biggest misunderstanding ever
It appears to be really simple to understand, yet, many people still believe in miracles – also happening in the hosting-sphere. They experience some (sometimes serious) performance issues with their Drupal site(s) and they assume it is their host fault, or maybe also partially Drupal fault, so they start shopping for some better host, preferably high performance one, who will guarantee their sites will became speed monsters, instantly.
The truth is naturally different – your Drupal site can run ‘fast-enough’ on almost any server, so long as you don’t try to host Drupal with 10k users and 1M nodes on some shared, cheap hosting for masses.
Of course there are some platforms known to cause serious performance issues ‘out-of-the-box’, like entire Virtuozzo family, which is well known as the worst choice for Drupal ever – at least since their v.4, because of dramatically bad I/O performance (and maybe some other reasons under the hood).
But any other platform, like Xen for example, will serve very well, if you have built your Drupal site right – and really, there are many ways to do it wrong – either by choosing not scalable modules like ‘forum’ or by following ‘open buffet syndrome’ and using 150+ modules you think you can’t live without, and finally by doing some crazy things in your views or panels configuration, to name just a few, common reasons why your Drupal site is slooooow.
Now you have found your dream host, Omega8.cc and you think – ‘Yeah! All my performance problems are finally gone!’. No no, they are not gone at all! Sure, your sites will be much, much faster here, but because we use automated scaling for available resources, your buggy site will attempt to eat them all! Then what you could expect? Of course we will contact you and tell you that you have a big problem, which needs to be fixed ASAP, or your Aegir instance will be disabled due to permanent resources abuse (ouch!).
You probably didn’t expect to hear that, but do you really believe that it is a good idea to add more power to your car when some of its gears are broken? Do you really believe that replacing your car’s main engine will fix your broken wheels? Probably not, so why do you believe it will work for your website?
Sometimes it will be not that bad and the site will still work here faster anyway, but why not to get it fixed properly and running really 100x faster all the time, as advertised?
So, what do we recommend?
Always fix your real issues first and start shopping for better host only if the site is still running slow, while you are sure you did everything to build it properly. And remember about our motto:
“A designer knows he has achieved perfection not when there is nothing more to add, but when there is nothing left to take away.” – Antoine de Saint-Exupéry
Exactly
This is one of the most under-discussed and worst documented issues with Drupal, or any CMS for that matter. I can’t tell you how many sites I’ve run across with performance issues that are towing 100+ modules behind them. I feel like as a community we need to do a better job of informing people of this issue. Every release attempts to appeal to the non-developer more and more, but many just get frustrated because they think Drupal, or their host, can’t handle the site they want…when in fact the site they want is not really the site they need.
Thanks for the great post…dead on.
Thanks Dave!
The problem is that some kind of the ‘open buffet syndrome’ now affects also Drupal 7.x core. We always supported the ‘underground’ smallcore movement, because we believe that it could be better for Drupal project and for the community if we will not have to learn that the hard way, that Antoine de Saint-Exupéry was right.
This adds another layer to this common problem, and the solution to this is still to be discovered and developed.
Many people do understand now already, that To make Drupal great we must take away most of the choices from the default UI, but it is not just about the UI, unfortunately.
The new Drupal 8 will be our serious test – do we really learned lessons from Drupal 7 and previous versions? Are we innovative and brave enough to learn from others, like from Microsoft and their ‘epic’ Vista, or from Apple – what they did with their heavy, first Leopard?