Optimisation de Cms Made Simple
Suite aux articles parut sur le blog des développeurs j'ai tenté de reproduire ici même un maximum de technique et voir le résultat
Suite aux articles parus sur le blog des développeurs j'ai tenté de reproduire ici même un maximum de technique et voir le résultat
Contexte
la page testée est celle ci : http://www.furie.be/projets/creations-de-site-web.html
Premier test : 10 rechargements de page, on constate le temps moyen de génération php
<!-- 0,238735 / 105 / 2944056 / 3425204 -->
<!-- 0,424726 / 105 / 5097640 / 5716992 -->
<!-- 0,310977 / 105 / 2944444 / 3425836 -->
<!-- 0,235003 / 105 / 2943308 / 3425204 -->
<!-- 0,704846 / 105 / 2943420 / 3723580 -->
<!-- 1,499326 / 105 / 2939456 / 4133748 -->
<!-- 0,573253 / 105 / 5097640 / 5716992 -->
<!-- 0,246198 / 105 / 2943308 / 3425204 -->
<!-- 0,236283 / 105 / 2943308 / 3425204 -->
<!-- 0,270878 / 105 / 2942076 / 3723800 -->
Soit une moyenne :
<!-- 0,4740225 / 105 / 3373865 / 4014176 -->
Dans le même temps je soumet ma page à un logiciel qui va simuler 10 affichages successif de ma page et me calculer le temps de réponse moyen (définit le délai d'envoi des données depuis le serveur vers le poste client + son affichage sur le poste client.)
http://webwait.com/6K
0.47s pour générer une page, et 2.64 secondes pour l'afficher sur un poste client. Ce sont essentiellement ces scores que nous tenterons de battre.
Modifications faites
Je pars du principe que je n'ai pas accès au serveur. Je n'ai donc pas la possibilité de modifier ou d'installer des accélérateur PHP ou un quelconque mod apache qui boosterait la machine. Après tout c'est le cas de figure de 90% des propriétaires de sites web.
Les seules modifications sont faites dans ma configuration de Cms Made Simple, et éventuellement dans des changements du fichier .htaccess
Dans l'ordre :
J'ai désinstallé les modules suivant sans pour autant les supprimer physiquement du FTP : CMSMailer, nuSOAP, Printing, Search, ThemeManager
J'ai changé le code de google Analytics pour une version Asynchrone (explications ici) afin que le chargement du tracker ne soit plus un frein inévitable au chargement global de mon site.
J'ai retiré pas moins de 25 fichiers du répertoire plugins qui sont des tags inutilisés.
J'ai supprimé les fichiers de langues différents de français et anglais de tous les modules.
J'ai modifié l'option use_sub_dirs de smarty
J'ai corrigé des erreurs Xhtml qui restaient et ai rendu mon CSS valide 2.1
J'ai activé la compression Gzip de mysql sans pour autant prouver qu'elle fonctionne (?)
J'ai activé les connexions permanentes de la base de donnée
J'ai désactivé le contentcache
J'ai ajouté un cache pour les entête HTTP
Modifications ratées
J'ai vainement tenté d'activer la compression Gzip ... pour l'instant c'est un échec, peu importe la méthode utilisée (via index.php ou même .htaccess)
Résultat des courses
Je relance la machine donc :
10 lancements de pages nous redonnent ces chiffres
<!-- 0,204338 / 102 / 2642516 / 3139580 -->
<!-- 0,236141 / 102 / 2659124 / 3217684 -->
<!-- 0,324864 / 102 / 2642448 / 3139580 -->
<!-- 0,190060 / 102 / 2642516 / 3139580 -->
<!-- 0,195792 / 102 / 2642448 / 3139580 -->
<!-- 0,194273 / 102 / 2642448 / 3139580 -->
<!-- 0,210626 / 102 / 2642232 / 3139244 -->
<!-- 0,237622 / 102 / 2642448 / 3139580 -->
<!-- 0,234254 / 102 / 2642516 / 3139580 -->
<!-- 0,281838 / 102 / 4723732 / 5434088 -->
Soit une moyenne
<!-- 0,2309808 / 102 / 2852242 / 3376807 -->
Côté vitesse de chargement :
http://webwait.com/6S : 0.84s
pour rappel nous avions un délai de chargement de 2.64 secondes et une moyenne de
<!-- 0,4740225 / 105 / 3373865 / 4014176 -->
un gain notable puisque qu'il s'agit en une bonne heure de manipulation de fichier d'obtenir
- -68% de temps de chargement
- -51% de temps de génération
- -16% de gain de mémoire utilisée
Un gain de performance que le visiteur saura apprécier :)
