Search code examples
.netcloudvpsdedicated

Deployment of a scalable web app. VPS vs Dedicated vs Cloud


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...


Solution

  • If the application can really scale without issue by simply adding new servers (physical or virtual) and if money is really no object, then the cloud solution has the advantage that you can add servers with very little lead time, and hence gown performance to whatever level you want quickly.

    Any solution built on physical machines that you have you have to order, install, cable, configure etc, will generally take longer to add new nodes to.