Nice write up DDSvpsHost.
I will only disagree with one point.
With shared hosting environments proving to be unstable for sites with sudden high traffic, a virtual private server gives you more flexibility and resources.
This statement is both true and false, depending upon the situation. A high traffic site should not rely on shared hosting where you have shared resources. A VPS does give you dedicated resources (if it is XEN or KVM, not OpenVZ).
However, a VPS gives you a finite number of resources, based on the plan you choose. Where as shared hosting has the entire servers resources, shared between the users on the server. Depending upon what plan you choose, how the host has resource limits set, and other loads on the server, a shared hosting account could be able to use 2GB of RAM, which would outperform a 1GB RAM VPS.
The biggest benefit to VPS's is the dedicated resources (so that your site is not affected by other users using too many resources) and the greater access to and control over the virtual server (root access). Another benefit to VPS's is that their instantly scalable. If you order Plan "A", and decide you need more resources, tell your host you want Plan "B", pay the fee, your host clicks a few buttons, and you have the added resources.
But, that is not done instantly or automatically "for sites with sudden high traffic". The only way to be instantly scalable is to have Cloud hosting.
1) If anyone is thinking of cloud hosting then forget it... In my experience despite all of the BS spin that its super awesome etc - its very volatile with performance being like a yo-yo... and its dependent on other sites and availability of resources...
Very true. There are benefit to cloud hosting, but there are some major draw backs too:
Pros
Instantly scalable - If you get that sudden flood of traffic, your resources will grow instantly to handle the added load. (up to the limits of the cloud infrastructure)
Distributed computing - By definition, cloud hosting should use multiple server, preferably geographically divers. This way if one physical machine goes offline, the other servers pickup the extra load and everything stays online.
Cons
Pain in the butt to deal with - Cloud hosting is not as simple as signing up for an account and uploading your site.
May not be any better uptime - Too many people think that cloud hosting automatically means your site will be up 100% of the time. It doesn't. Even Amazon AWS experiences downtime.
May not be any more secure - After all, it is still shared hosting, with a few extra features
Can be VERY Expensive - With Cloud hosting, your billed for what you use. If your site uses a little this month, you may get a bill for $20. If a Facebook post goes viral and your site traffic explodes, you may get a bill for $2,000 next month.
Also keep in mind, I have seen some providers offering shared hosting, and call it "cloud hosting" as a purely marketing gimmick. If you decide you want to try cloud hosting yourself, make sure you ask questions to find out what your really getting!