Scaling

Created on Feb. 19, 2013, 1:20 p.m. by Hevok & updated by Hevok on May 2, 2013, 5:26 p.m.

Generally database are the first place that require investigations as one starts seeing slow downs as the Application grows with users. Relational database are expensive to scale. They generally require DBMs, massive servers, tons of memory and that is when everything goes right.

One need not to immediately jump to upgrading database, that would be just wrong. Instead what one can do is to look at places to cache aggressively In the future we are gong to see more and more places flattening database and moving to NoSQL, generally in views, but occasionally directly on the pages with JavaScript. This forces less and less reliance on the Relational Database.

So the future of Web Frameworks will have less and less reliance on a constrained database. This is a really good thing because AWS provides the ability to only purchase the hardware that we need when we need it. That means that if a site get a ton of users right now, the Application will scale the number of EC2 instances. This gives confidence that the number of queries directly to the database will not increase directly with that load because each query is aggressively cached.

An EC2 scaling is directly in proportion to the number of users an Application has. RDS, on the other hand, scales exponentially with the number of users that one has. This is consistent with any large Application. The database just costs more.

scaling-applications.jpg

Tags: web, database, scale
Categories: Tutorial
Parent: Web Framework

Update entry (Admin) | See changes

Comment on This Data Unit