Actualité

Divers

Mac4Ever optimisé !

Par Denis Vaillant - Publié le

L'optimisation de la base de donnée qui contient les news est une opération indispensable sur un site comme Mac4Ever. En effet, plus la base de donnée est optimisée, plus les pages chargent vite et moins l'ordinateur est suceptible de s'évanouir quand vous êtes nombreux dessus (genre en période de keynote...).

Mac4Ever étant naturellement peu optimisé, nous avons procédé il y a 24h à quelques opérations :

Créations de tables miroirs ne contenant que les dernières entrées.

Ainsi (et concrètement) au lieu de demander au serveur de chercher par exemple 10 news parmi 10000 et de les classer par date (opération réalisée chaque fois que vous chargez la page d'actu), aujourd'hui le serveur fait l'opération suivante : chercher 10 news parmi 10 news (placées dans une table miroir) et les classer par date.

Conversion des tags en HTML lors de leur insertion dans la table miroir.

En effet, avant d'être affichée, chaque bout de texte passe par une moulinette qui va rechercher autour d'une 50 de tags et les remplacer par leur correspondance en HTML. Ces tags permettent de gérer les images, la mise en page etc. Pour optimiser cela, il a suffit de faire cette opération de conversion des tags en HTML avant l'insertion des données dans la table miroir plutôt qu'après (Les news sont insérées dans les tables miroir uniquement lorsqu'un rédacteur publie une news...).

Les résultats de ce début d'optimisation sont déjà visibles. Vous pouvez voir ci-dessous l'occupation CPU de notre valeureux bipro G4 1Ghz sur 3 jours. Le processeur tourne globalement 35% à 45% moins qu'avant l'optimisation (les pics correspondent aux opérations de back-up).

Mac4Ever optimisé !



PS : il ne reste plus qu'à savoir si cette optimisation suffira pour le keynote de Janvier :p