Let's suppose i developed a .NET (Mono compatible) scalable webapp composed by various services that can run on the same machine or on different machines without problem. in any moment with few click i can add machines to the system and the service scale without problems. Let's suppose that the webservice is like a social network website, so many requests from the world.
My question is about the deployment enviroinment. i have many options:
- a cluster of dedicated server (each server run all services)
- a cluster of dedicated server (one for each service)
- a cluster of VPS (one for each service)
- a VPCloud (a cloud instance for each service)
Let's suppose also that in the first stages money are a secondary problem to performance. What is the best solution and why?
My concerns about VPS and Clouds are about the fact that the RAM and the Disk usage are not transparent and this could lead to low performance RAM or low performance Disk... i never read any vps/cloud offer where the quality of resources are quantified/guaranted like for a dedicated server offer...