Confoo.ca 2010 : Habits of Highly Scalable Web Applications

Ma conférence préférée du jour!

Web server
The easyest part
1 – one server
2- load balancing (as long as the performance is ok it’s good : if one user need 1 web server)
citrix
squid
f5 Big-Ip
Cloud

Preparation
If using local cach : Avoid assuming exclusive/single cache
Don’nt reliy on the file system
if you have code assuming you hav 1 file system, encapsule it

Database
typically, the harder part
- Start with 1 server
- Master slave setup
Separated laod : write update and delete vs read
Code avec l’idée du read et du writ séparer même si ce n,est aps le cas.
- Multiple slave
One slave database by web server (downside si même machine c’est que tu scale pas une partie mais tout. Tu peux pas achter m,achine qui répond au besoin targetter)

-slave pool
Virtually divise your slave into pools
Example:
2 server for batch
4 server for Comments
8 servers for Primary

Ajax pour call lourd après

- Breking database in smaller ones
Doiwnside:
load web server
Loss direct SQL support
More complicated programming

Multiple master

Type of partitionig
- Vertical
Moving various columns of your table into different table
Move rarely used coluimns…
Move ofteb empty colomns
Move colomns that are not used in where

- Horizontal
Moving various rows of your tables into different table
Range base, Date base, interjaced, user base

- Application level
Moving varioys table on différent server

Caching

Patch léchait que la dB est lente
Cache des petit morceau pour le reuse

Eliw.com
@eliw