La Table Ronde
Alice & Arthur — Magasin spécialisé dans les jeux de société et jeux de rôles passionnés. Premier site vitrine et catalogue d'articles.
En classe · Le scénarioAlice & Arthur — Magasin spécialisé dans les jeux de société et jeux de rôles passionnés. Premier site vitrine et catalogue d'articles.
En classe · Le scénarioFlora & Hazel — Ferme maraîchère éco-responsable fournissant des paniers bios de saison. Étal de marché & boutique en ligne.
En laboratoire · ÉvaluéUn demi-million de lecteurs visitent l'encyclopédie... mais restent des anonymes. Alice lance la Guilde des Compagnons : chaque joueur devient un membre avec son blason, son rang et ses points d'honneur.
Un lecteur anonyme lit une fiche et repart. Un Compagnon revient chaque jour vérifier son classement, terminer sa quête et défendre son rang.
Même nombre de visiteurs qu'avant... mais chaque page est maintenant calculée sur mesure : points d'honneur, rang, classement. Le cache Varnish ne peut plus rien servir d'avance.
Stable... mais chacun est maintenant connecté, identifié et servi sur mesure.
La nouveauté : chaque profil consulté, chaque point gagné interroge MySQL. Un million de fois par jour.
Des bots créent de faux membres pour gonfler des classements, revendre des comptes gradés et polluer l'armorial de blasons publicitaires.
Le pire : les requêtes des bots sont comptées dans les mesures de performance. Impossible de savoir si le serveur ralentit à cause des vrais membres, des bots... ou d'autre chose.
Profils personnalisés, armorial des blasons, points d'honneur et classements réactualisés à chaque action des membres.
« Encore 200 points et je passe Chevalier d'Or ! »
Gauvain, compagnon de la Guilde 🛡️ Blason : le Griffon d'Or · rang 3Mêmes Visiteurs, Base de Données en Feu
500 000 visiteurs par jour comme la semaine dernière - mais 1 000 000 de requêtes BDD quotidiennes, car chaque page de membre est calculée sur mesure. Et 500 000 requêtes hostiles brouillent les compteurs.
Varnish, qui servait 99 % des fiches, laisse passer 98 % des pages de la Guilde : chaque profil est unique, rien n'est réutilisable. Toute la charge retombe sur PHP et MySQL... qui habitent la même machine.
Conflit de Ressources Web & BDD sur le Même Hôte
Le serveur web et MySQL se disputent le processeur et le disque de la même machine. Quand l'un tire la couverture, l'autre gèle - et les mesures mélangées ne désignent aucun coupable.
Séparer Physiquement Web et BDD, puis Mesurer avec JMeter
Déporter MySQL sur son propre serveur optimisé, relié au web par le réseau privé. Chaque machine a ses compteurs : JMeter mesure scientifiquement qui encaisse quoi, hostiles compris.