Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to design scalable applications? [closed]

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

like image 220
Martin Avatar asked May 25 '09 16:05

Martin


People also ask

How can you improve application scalability?

The best solution to most database scalability issues is optimizing SQL queries and implementing indexing strategies. By building articles and authors into a single query, you can dramatically reduce the volume of queries you're running.


2 Answers

This is a nice read on livejournal and how they've scaled their application over time.

danga.com/words/2004_mysqlcon/mysql-slides.pdf[PDF]

It might not be the sort of thing you're looking for, but it's one of the better "This is what we did and why" overviews on scaling.

like image 41
JensenDied Avatar answered Sep 27 '22 23:09

JensenDied


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.

like image 113
Jim Ferrans Avatar answered Sep 27 '22 22:09

Jim Ferrans