Étude de cas : Migration vers l’Offre Infra et ses optimisations
Chez 7724 nous proposons différents types d’offres d’hébergement. De l’offre mutualisée à l’offre dédiée, chaque site est orienté vers l’offre la plus adaptée à ses besoins.
Nous répondons également à des problématiques plus avancées grâce à l’offre Infra.
Elle est totalement prévue pour des sites à forts trafic. Que ce soit sur des périodes données, comme des opérations commerciales, ou bien tout au long de la vie du site, pour couvrir tout type de pics de fréquentation.
Afin de pouvoir optimiser ses performances, une infrastructure est mise en place avec 3 types de composants :
- Serveur(s) Répartiteur (load balancer) / Proxy (pour 1 à 2500 sessions simultanées)
- Serveur(s) Front-End 1 SSD (pour 1 à 500 sessions simultanées)
- Serveur(s) Base de données
En fonction des besoins, chacun de ces composants est présent 1 fois ou plus dans cette infrastructure.
L’Agence TROA réalise des sites à forte valeur ajoutée et à ce titre, a pleinement conscience des facteurs back-end de réussite d’un projet web. Nos équipes ont ainsi été mises à contribution pour une migration d’un de leur site client PrestaShop vers notre plateforme d’hébergement. (Pour des raisons de confidentialité nous ne divulguerons pas le nom du site en question)
Les besoins étaient de pouvoir répondre à une forte charge de trafic pouvant couvrir plusieurs milliers de visiteurs par jour et également de pouvoir absorber des opérations commerciales de grande envergure en gardant un oeil particulièrement attentif durant ces périodes.
Une fois la mise en place des structures serveurs, la migration du site e-commerce a été lancée.
Voici les captures de tests de performances (effectués avec tools.pingdom.com) indiquant les premiers résultats :
Avant la migration chez 7724 :
Suite à la migration chez 7724 :
Nous obtenons une note globale légèrement supérieure et un gain sur le temps de chargement de la page lié aux paramétrages serveurs spécifiques pour PrestaShop.
Des opérations complémentaires ont été mises en oeuvre. La notion d’optimisation ici prend tout son sens. Les vecteurs d’amélioration des performances sont nombreux et permettent d’apporter une véritable évolution.
Le Pack Performance pour une boutique PrestaShop
Ce pack permet de déceler et de résoudre des problématiques de temps de chargement.
Une fois le site migré chez 7724, nous avons procédé à un audit, puis nous avons effectué des optimisations à la fois logicielles et liées à l’hébergement :
Optimisation du poids des images
L’intervention consiste à détecter les images considérées comme trop lourdes et à les compresser pour réduire leur poids sans pour autant perdre en qualité.
L’effet escompté est confirmé par une diminution du poids de la page :
Amélioration du temps de construction html (wait)
La rapidité du temps de construction html d’une page est capitale.
C’est la toute première étape du chargement d’une page : la page est construite, et seulement après les autres ressources sont téléchargées. Tant que la page n’est pas construite et téléchargée, rien ne se passe sur le navigateur.
Plusieurs sources peuvent entraver ce temps de construction (requêtes trop lourdes, appel à un site externe, algorithme PHP non optimisé)
L’utilisation de l’outil de benchmark dédié Xdebug, nous permet de détecter les goulots d’étranglements afin de les optimiser à travers différentes techniques (réécritures de codes, réécritures de requêtes, poses de caches, poses d’index en base de données …)
Avant Xdebug. Wait = 895 ms :
Après Xdebug et optimisations. Wait = 257 ms :
Modification de l’appel de Google Fonts externes
L’appel de fichiers externes ajoute des ressources à télécharger par le navigateur. Les polices d’écriture de type fonts.google.com sont intégrées aux fichiers du thème graphique afin de réduire le nombre de fichiers à transférer et gagner en efficacité.
Cette intervention permet de bénéficier de la compression CSS et de réduire le nombre de requêtes sur ces fichiers de polices de caractères.
Nous soulignons alors que le nombre de requêtes a été réduit, et le temps de chargement global est plus rapide.
En revanche, nous constatons que le poids de page est revenu à sa valeur de départ.
Activation WebP
Pour parfaire le poids de la page tout en conservant la qualité visuelle des images, le format d’image WebP est à privilégier.
La mise en place et l’activation du module WebP permet un allégement du poids de page ainsi qu’une amélioration du temps de chargement global.
Optimisations caches PrestaShop-Serveur
L’amélioration des performances de chargement du site e-commerce PrestaShop qui nous préoccupe, passe par la mise en place de systèmes de mises en cache optimisées, ici en l’occurrence Varnish.
Ces caches vont réduire considérablement le temps de chargement des pages clés du site en mettant l’intégralité de la page en cache, les éléments dynamiques (ex: panier) sont quant à eux chargés après l’affichage de la page.
L’indicateur le plus parlant relevé est le wait. Quand cet indice de temps de construction html baisse, cela induit directement une réduction du temps de chargement global
CONCLUSION :
+10% sur la note globale
– 2,3 Mo du poids de la page
– 6 requêtes
– 2,28 secondes sur le temps de chargement global
Les tests externes de performances (avec tools.pingdom.com) effectués à chaque étape nous montrent l’évolution des performances du site e-commerce migré et optimisé sur un hébergement de type Infra sur nos serveurs 7724.
Cette offre Infra a été composée de 1 Répartiteur (Load balancer), 4 Serveurs frontaux web, et une base de données master répliquée.
Cette infrastructure est destinée à accueillir 2000 utilisateurs simultanés. Les optimisations mises en place ont permis d’atteindre la capacité de 500 utilisateurs simultanés sur chaque serveurs frontaux.
L’ensemble des indicateurs clés de performances ont été améliorés et l’infrastructure ainsi optimisée a permis de couvrir des opérations commerciales génératrices de très fort trafic.
Vous prévoyez des opérations commerciales de grande envergure ou vous avez tout simplement besoin de plus de capacité pour accueillir l’ensemble de vos visiteurs ? Contactez-nous pour l’offre Infra la plus adaptée.
Contactez-nous !