Posted: February 16, 2012
For us here at VisionPoint Marketing as well as our clients, web hosting has always been somewhat of an adventure. Let's take a look at web hosting.
What is web hosting?
Web hosting is commonly misunderstood, but in reality the idea behind it is very simple. A website has to live on a computer somewhere in order for people to access it. These computers are commonly called web servers. So when you contract with a web hosting company, you are effectively renting part of a whole computer to hold your website.
You may be thinking, why can't I just use my computer to hold my website?
Web servers are running software made specifically for serving internet content.
They are hooked up to extremely fast networks.
They are constantly backed up to ensure your data is safe.
They are on networks designed to make sure there is as little internet disruption as possible.
They are not going to slow down because you are running Photoshop or watching a video on YouTube.
So now that we know that we need a web server to hold a website, we just have to decide which web server should hold the website. Easy, right? I wish! With so many options, differing platforms, competing interests, cost issues, support issues as well as everything else involved, making a good decision can seem daunting. Through my own personal experience, I have found a few questions that can help guide your decision.
1. Do we want to host internally or externally?
If your organization has an internal hosting option supported by an IT staff (as is the case with most of our larger corporate and higher education clients), this is the first decision you'll have to make. If you do not have internal hosting as an option, you can skip to question 2.
It's free! You will not have to worry about monthly or yearly fees and will not have to deal with and budgeting issues.
You will have a physical person you can speak to in the case of issues.
Does your internal IT department provide uptime guarantees?
Are you going to be able to upgrade software as necessary?
Are you going to get a choice of software platform?
Are you going to have storage space quotas that you will need to abide by?
Are you going to get the performance out of your server that you need?
Is your IT support available 24 hours a day?
Hosting can cost as little as a few dollars a month to thousands of dollars a year. Is budgeting and paying for this going to be a problem?
Are you ok with communicating via email about any potential issues that may arise? (Some hosts provide phone support, some do not.)
You will be provided a definitive Service Level Agreement (SLA) that will provide guarantees surrounding uptime and performance.
You will have complete freedom to choose the platform that you need.
You will generally not be restricted by and sort of storage quotas. The hosts that still have storage quotas are extremely generous.
You will have the ability to easily upgrade your level of service should you need more muscle behind you web presence.
You will be able to get support 24 hours a day.
Some larger corporate and higher education institutions do not allow external hosting, so this decisions might be made for you. But for our larger corporate and higher education clients that have the option, we generally recommend going with an external host as the freedom it affords our clients lets us work as creatively as possible to achieve our client's strategic goals.
2. What platform should we use?
There are two main options here, Windows and Linux. Both are completely viable and heavily supported. You are not really making a bad decision going with either one. Now, talk to any web developer and you are not going to get such a rosy picture. We are an opinionated bunch! Almost every developer I have met thinks either Windows is far superior to Linux or vice versa.
I want to be clear, there is nothing that cannot be achieved on either platform.
The key here to to put all of the opinions aside and look at your resources. Generally web developers focus on either the Windows based technologies, .NET, C#, IIS, MSSQL, etc. or the technologies commonly run on Linux based setups, PHP, Python, Ruby on Rails, MySQL, Apache.
Are your resources more comfortable with one than the other?
What would the learning curve be?
Are their certain pieces of software you are interested in that require one or the other?
Does the marketing company you are working with have preference?
This decision is a really big one.
Should you choose a Windows based setup and spend a few years developing on .NET, you will be locked into a Windows environment unless you want to rewrite all of your work in another language. .NET can only run on Windows.
Should you choose a Linux based setup and spend a few years developing on PHP or any of the other supported languages, you will technically have the ability in the future to move those to a Windows based server, but it will not be a pleasant journey.
This decision is going to have a large impact on your technology and personnel decisions in the future. If this seems daunting, you are 100% correct. It is best to work with professionals on trying to figure out this choice.
3. Shared Hosting, Virtual Private Server(VPS), Full Servers, or Cloud Hosting?
There are 4 common options when it comes to deciding what level of hosting need.
If your website is not going to receive a ton of traffic, is not going to need to a ton of power and is not mission critical, then this is the choice for you. Shared Hosting will put your website on a web server with some number of other websites. You share resources and generally use what is available. If the other websites are not doing much at the time, you may receive great performance. If another website on the server is using a lot of resources, your site may run more slowly. If another website is runs some bad code, it could bring down your website for a period of time until the server can recover.
You also have less options for customization on a shared setup. Since resources are shared between websites, the types and versions of software running are generally chosen for you and are not changeable.
Generally for something simple like a few pages or a simple blog on WordPress, shared hosting would be fine. Shared hosting can generally be found for around $5 to $15 a month.
Virtual Private Server (VPS)
Are you running a mid-grade Content Management System like Expression Engine or Drupal? A VPS may be right for you. A VPS is the step between have a full server to yourself and running on a shared hosting setup. A VPS is a defined slice of a whole web server. Think of a web server as a pizza, a VPS is a slice. Once you have your slice, it is not going to get bigger or smaller, it is what it is. For example, a web server might be divided into 4 VPS's, this means you would receive 25% of the processor power, 25% of the RAM, 25% of the hard drive space, etc.
This may sound similar to shared hosting but the biggest difference is that you are guaranteed a certain level of performance and no one else's activities can encroach on your level of service.
VPS's also allow full customization, unlike Shared Hosting. Your slice of the server is completely separate and can run any software you would like. If you need to upgrade anything or run an older version of software, you will have the complete freedom to do that.
VPS's come in different sizes and flavors but generally run around $15 to $80 a month.
Do you receive a ton of web traffic? Are you running enterprise level Content Management Systems like Sitecore, Ektron, or Cascade Server? A full web server is probably right for you. This is getting into the big leagues. At least one whole web server will be completely dedicated to serving your website. You could even have multiple full servers if the need arises. This option provides you full freedom and the most power available.
Full Servers come in different sizes and flavors just like VPS's and they can run $150 to $1000+ a month.
I am sure you have heard about the "cloud" lately. You may or may not have any idea what that means. Well the idea of a cloud breaks with conventional ideas about web hosting. Instead of your website living on one computer, your website would live on multiple computers all across the country and any one of them could provide you website to a user. The advantages of this is that if one server goes down, there is not an interruption in service. There are also performance gains. If one part of the nation is experiencing a lot of web traffic, your website can be served from other parts of the nation that might not be as congested.
This sounds great but this technology is still in its infancy and as with any emerging technology, there may be issues that need to be ironed out from time to time.
Cloud Hosting can run anywhere from $10 to $2000 a month depending on your needs.
4. I am hosting externally. I have made my platform decision. I know what level of hosting I need. Now which company do I use?
There are hundreds of hosting companies out there. It can be very overwhelming to do a Google search for web hosting. You are going to be overwhelmed with claims of 99.9% Uptime, 500 GB of Hard Drive Space, Unlimited Bandwidth, Dual Core Xeon CPUs, Gigabytes of RAM and a bunch of other word soup that probably doesn't mean much to you.
While all of these claims seem flashy and appealing, I have found that most reputable hosting companies can give you all the specs you need on a host. There is not much differentiation there. The key you should look for is who is going to provide the best support to you.
Do they guarantee a certain level of uptime?
Are they available 24 hours a day, 365 days a year?
Can you call them?
Will they help you troubleshoot issues you may be having with code you are writing?
If you mess up your web server, will they fix it or are you on your own?
What type of backup services do they offer?
We have a few vendors that we recommend, but you may want to just call up some of the more reputable ones and talk to them about their level of support. Our recommended vendors are:
If you have any questions about your specific hosting issues, we'd be happy to discuss a strategy with you! Please contact Zac Henderson with any inquiries.