Suppose I want to host some web-service - a bunch of code that will accept HTTP requests, do something useful and serve results as web pages.
AFAIK there're two options. I could buy a server and host it at my office/home/whatever or at a colocation facility. Or I could rent a virtual machine in some public cloud service like Amazon EC2 or Windows Azure.
Are there any other options? What are they?