Gestion d’un pic de traffic sous Rails (RoR)

Shanti Braford détaille comment son site à survécu à plus de 550 000 pages vues en 24H. Suite à la diffusion d’un de ces articles sur la première page de digg son post a été vu plus de 500 000 fois. Les serveurs ont du répondre à un trafic inhabituel pour ce site, à savoir 6 pages / seconde.

serveurs.jpg

Voici comment est composé l’architecture technique de son site, c’est assez simple :

Deux serveurs :

Web/App Server

* Cost: $127 / mo.
* CPU: Intel P4 – 2.8GHz
* Memory: 2GB
* Bandwidth: 1500GB (the box rarely uses more than 25% each month)
* Uplink Port: 10Mbps
* Hard drive: 80GB x2
* OS: Fedora Core 4

DB Server

* Cost: $242 / mo.
* CPU: AMD Single CPU Dual Core Athlon 3800
* Memory: 2GB
* Bandwidth: 2000GB
* Hard drive: 500 GB x2 in SATA RAID 1
* Uplink Port: 100Mbps
* OS: CentOS 4.x X86_64 Bit

Les deux serveurs sont connectés grâce à lien privé.

Liste des logiciels utilisés :
* Ruby: 1.8.4
* Rails: 2.0.2
* MySQL: 5.0.27 standard
* nginx (web server): 0.4.13 (built by gcc 4.0.2)
* mongrel: 1.0.1
* mongrel_cluster: 0.2.1

Au delà de la performance et des gains publicitaire il est intéressant de noter comment Ruby On Rails (RoR) c’est comporté pendant cette montée en charge soudaine, à noter qu’il est accompagné de nginx.

nginx.jpg

Il faut bien sur garder à l’esprit que le système est assez statique mais c’est un reporting intéressant et utile.

Tout les détails sont ici :
http://shanti.railsblog.com/how-7-mongrels-handled-a-550k-pageview-digging/

Sur le même thème :

  • Pas d article sur ce thème

2 Responses to “Gestion d’un pic de traffic sous Rails (RoR)”

  1. Shanti Braford Says:

    Very cool, a partial translation of the article to Francais. Merci!

  2. Gestion d’un pic de traffic sous Rails (RoR) « InfoPythonFr Says:

    [...] Lire la suite… [...]

Leave a Reply