Basic Hosting Solutions for a Drupal based website.

When building a Drupal site, the inevitable time comes when you need to decide on a web hosting company and when reviewing the providers it can seem that possibilities are endless. Hosting providers offer a wide-range of possibilities and it is often unclear about what you actually need for hosting your Drupal-based website.

What Drupal Requires
I would suggest reviewing the documentation before making a decision, but basic rule of thumb is to go with Linux. If there is a choice of distribution I would generally recommend some flavor of linux distribution that is already familiar, and if linux is not familiar I would suggest using the most recent Ubuntu LTS, Debian, or CentOS. It is also recommended to stay away from hosting your website in a Windows based environment. Where it definitely is possible to host a Drupal site on a Windows machine, additional configurations will need to be made to support packages that are native to Linux.
Shared Hosting
In most cases, shared hosting will be among the most affordable. Service providers such as GoDaddy, Bluehost, and 1&1 will offer shared hosting, some as low as one dollar a month. Shared hosting is typically best for websites that are built entirely in HTML and do not heavily rely on the database. Shared plans typically lack in the resource department and are often underpowered when it comes amount of available memory. Memory is an important asset that a database driven content management system such as Drupal depends on for optimal performance, and a lower amount of available memory will reduce the number modules that can be used. In addition to less modules, low memory will also contribute to longer page loads. In some cases the memory limit can be upgraded via modifying your .htaccess, but generally the maximum amount is far less than what may be available with alternative forms of hosting. In addition to low availability of system resources, shared hosting also provides limited access to the server. Installing additional packages may require contacting the provider, applying custom configurations, and in some cases installing third party software is impossible. Virtually all shared hosting will provide FTP access, however access to the secure shell (SSH) is often limited. Where some providers allow you limited SSH access some providers will restrict it entirely, meaning that using tools like Drush will not be an option.
VPS Hosting
Virtual Private Servers (VPS) utilize virtualization technology, which essentially is a single dedicated server that is partitioned to appear as several independent servers so that each instance has its own installation of the operating system and unique IP address. VPS hosting will likely provide SSH access out of the box and will in most cases offer a higher memory limit than what is provided by a shared hosting account. Another added benefit is that a VPS can typically be scaled more efficiently than that of shared or dedicated hosting. Adding additional hard drive space or memory can often be done from the administration panel of your hosting account, and in some cases can be deployed in a matter of minutes. One drawback to VPS is that service providers will often lack support with basic plans, however the benefits with performance and reliability and support is generally offered if needed. In most cases simple issues can be resolved by a quick Google search.
Final Thoughts
VPS Hosting tends to cost slightly more than shared hosting, however it is definitely worth the extra cost due to the additional benefits. From my experience with VPS hosting, some of my favorites include Digital Ocean and Linode. Digital Ocean offers SSD based hosting that is affordable VPS at $5.00 for entry level and can be upgraded as needed. Linode offers more traditional VPS hosting packages, along with slick UI as well as fully managed services.