How do you design/architect a scalable application? Any suggestion of books or websites that could help to understand how to scale out applications?
Thanks
Over the past year I've had to come up to speed on this question for a project my company's working on, and I've found these resources extremely helpful: Todd Hoff's highscalability.com; Scalable Internet Architectures, by Theo Schlossnagle; and Building Scalable Web Sites, by Cal Henderson. Highscalability.com in particular will point you to many good presenations, tutorials, books, and papers, and is a great place to start. All of the advice is practical, and based on experience at sites like Flickr, Twitter, and Google.
BTW, scalability is not performance. A perfectly scalable system is one that has a fixed marginal cost to add additional users or capacity.