I have a web application that currently has about 500,000 users, averaging about 500 page views per hour, and we are expecting to have to scale up to 20,000,000 users within the next year.
Our current system cannot handle that scale, and so we need to move to one that can.
I was thinking a services-based architecture would be more robust and allow for the component services to be scaled independently of each other and the main application.
But I have been warned that one can easily design a services architecture that doesn't scale well, and since I have little to no experience designing such a system, going through some recommended resources is probably better than just "taking a stab at it."
So, what resources are recommended for architecting a well-scaling system? The platform is .Net, but I would imagine that the same information applies to any service-based architecture, regardless of platform.