Appli Web

Haute charge

Par Quentin Suire
INSA de Rouen, le 02/09/2015

Quentin Suire

Promo ASI 2011

Ingénieur full-stack chez Viadeo.com

Plan

  1. What are you talking about?
  2. Un exemple de scalabilité
  3. Le cas d'une web app
  4. Démo

What are you talking about?

Une Application Web

“En informatique, une application web est une application manipulable grâce à un navigateur web.”
— Wikipedia

Un p'tit schéma

Une bonne web app ?


Les utilisateurs sont heureux


Le site est disponible


L'entreprise ne perd pas d'argent


Le système peut évoluer

Évolutivité

  • Produit : Apporter plus de fonctionnalités.
  • Utilisation : Supporter un usage plus important.

La scalabilité

“La scalabilité désigne la capacité d'un produit à s'adapter à un changement d'ordre de grandeur de la demande.”
— Wikipedia

Remarques

Truth #1

It won't scale if it's not designed to scale.

Truth #2

Even if it's designed to scale, there's going to be pain.

— John Engates, CTO de Rackspace

Un exemple de scalabilité

Le café du coin

Basé sur http://highscalability.com/blog/2014/3/17/intuitively-showing-how-to-scale-a-web-application-using-a-c.html

Les premiers clients

Café

Café

Le client n'attend pas

Café

Toujours plus de clients

Café

Café

Café

Les clients sont satisfaits...

mais ils veulent des gaufres

Café

Mais !?! C'est Starbucks !

L'évolution d'une web app

Architecture 3-tiers

Sécuriser la donnée

Scaling horizontal

Cache frontal

Logs à gogo

Dériver la donnée

Séparer la lecture et l'écriture

Cohérence à terme

Haute disponibilité

Aucun SPoF

Démo !

À retenir

Ne pas brûler les étapes

S'intéresser au produit

Connaître les limites de son système

Tester régulièrement son système

Prévoir un forfait 4G