Hm... I don't understand why did they opt to go with TWO(!) SQL servers so early. If your DB is designed well and your queries are written well, you should max out on HTTP side first.
Even on super-fast ASP.NET, we started with two HTTP servers plus only one single SQL server behind and it worked very well...
Scribd is pretty write-heavy - between traffic analytics, hit counts, votes, comments, favorites, and submissions, they're looking at several DB writes per page view. Good indexing and DB design can make your reads really fast, but your writes are still limited by the speed at which the disk rotates. And if you have a lot of indexes to support fast queries, they'll slow down your writes by some (fairly small) percentage.
You're right though - most of the sites I've been involved with have been heavier on the webserver than the DB. It depends on the application...
According to the presentation deck, they have 3 DB servers. It's not clear to me what each of them do, but one of them apparently gets activity logging writes, and the other is a slave that they use to do analysis queries on that data.
Comments
Hm... I don't understand why did they opt to go with TWO(!) SQL servers so early. If your DB is designed well and your queries are written well, you should max out on HTTP side first.
Even on super-fast ASP.NET, we started with two HTTP servers plus only one single SQL server behind and it worked very well...
Scribd is pretty write-heavy - between traffic analytics, hit counts, votes, comments, favorites, and submissions, they're looking at several DB writes per page view. Good indexing and DB design can make your reads really fast, but your writes are still limited by the speed at which the disk rotates. And if you have a lot of indexes to support fast queries, they'll slow down your writes by some (fairly small) percentage.
You're right though - most of the sites I've been involved with have been heavier on the webserver than the DB. It depends on the application...
According to the presentation deck, they have 3 DB servers. It's not clear to me what each of them do, but one of them apparently gets activity logging writes, and the other is a slave that they use to do analysis queries on that data.