To give you a better idea of what hosting provision is necessary for your site, we’ve listed some of the uses and pros and cons of the different types of hosting services available.
Shared hosting is the cheapest hosting available. On a shared hosting account, there may be hundreds of people with multiple web sites being hosted off the same server as yourself. Most shared hosting is ‘oversold’ in that the necessary capacity for all accounts to use their maximum resources simultaneously isn’t available – the vendor is making a calculated decision that most sites will under utilise space, processing and network bandwidth. While this makes for good value for a given spec, the amount of users on a machine means that it is likely that sooner or later a misbehaving application, unethical use or insecure account will degrade server functionality. Reliability, performance and configurability may be less than optimal but for a site that doesn’t have critical uptime requirements or attract large amounts of traffic, the minimal cost is attractive.
Virtual Private Servers (VPS) are virtualised operating systems that co-exist on a single dedicated server. There may be a dozen VPS accounts on a server, and each one has it’s own operating system and guaranteed resources. As each account is more heavily isolated from the effects of others than in shared hosting, performance and security are improved. A VPS web server and database services can be configured optimally for their task without having to compromise for other accounts, and the full administrative access available means additional software can be installed for additional tasks. VPS can often be upgraded in their share of memory and CPU use instantly on demand, so can be a good compromise between the performance advantage of a dedicated server while retaining scaleability and lower cost.
Dedicated servers only have one operator so have full use of all CPU, disk I/O, network port and memory resources. Where security, performance and uptime are important, or traffic is heavy and bandwidth use is high then dedicated servers should be used. A dedicated server has full adminstrative control to install or optimise whatever server software is required for the application. Quality dedicated servers will have muti-core processors and hot swappable RAID hard disk arrays for maximum performance.
Co-location is the practice of externally owned dedicated servers being rented rackspace in a datacentre. This is cheaper than renting a dedicated server, though can work out expensive if you have to get the remote datacentre to do much ‘hands-on’ servicing of the server.
Cloud hosting is a relatively new form of hosting where the hosting requirements of storeage space and processing are distributed amongst a large number of online servers that are interconnected. The amount of resources assigned to the site or application can be dynamically reconfigured in realtime so can scale to handle the current demand as required. This sort of service usually differs from conventional hosting in that the service is usually charged on demand for consumption of cpu, storeage and bandwidth in small units, as opposed to having a fixed monthly fee with a set allowance. A popular example is the range of Amazon Web Services – EC2 for processing, S3 for hosting files and simpleDB for database queries. While the on demand cost model can achieve savings in running cost, there can be additional complexity in development of a system designed to be compatible with cloud services.
A CDN (Content delivery network) is a geographically dispersed network of servers with high speed interconnections that duplicates files across the network and then serves a file request from the best suited location. They are designed for heavy load scenarios where speed and reliability of delivery are important, and are used to distribute large files such as downloads, on demand and live streaming videos, and images but not for dynamically generated web content.