16 janvier 2023

Pourquoi ne pas utiliser mod_pagespeed pour les performances Web ?

Certains utilisent encore mod_pagespeed ou ngx_pagespeed pour améliorer les performances de leur site web, mais à quel prix ?

Google-mod_pagespeed-TTFB

Si, jusqu'en 2019, nous utilisions avec enthousiasme mod_pagespeed pour Apache et, dans certains cas, ngx_pagespeed pour NGINX, et que nous envisagions même de le recommander (comme dans cet article : « mod_pagespeed et ngx_pagespeed : modules Google pour serveurs web Apache et NGINX afin d'améliorer les performances ») , il est aujourd'hui plus que jamais temps d'annoncer publiquement que, depuis au moins 2020, l'utilisation d'un projet désormais abandonné et obsolète n'a plus aucun sens.

Mais revenons brièvement sur le sujet abordé précédemment en expliquant, quoique cette fois de manière plus approximative, ce qu'est mod_pagespeed et quels étaient les objectifs initiaux souhaités par Google lui-même.

Qu'est-ce que mod_pagespeed ?

mod_pagespeed est un module Apache créé par Google pour améliorer les performances des pages web. Ce module utilise diverses techniques d'optimisation du contenu, telles que la compression d'images et la minification CSS et JavaScript, afin de réduire le temps de chargement des pages.

Google a créé mod_pagespeed pour aider les webmasters à améliorer la vitesse de leurs pages Web. La vitesse de chargement des pages est un facteur important dans l'expérience utilisateur et le classement des moteurs de recherche.

mod_pagespeed a été lancé pour la première fois en 2010 en tant que projet open source et a reçu de nombreuses fonctionnalités au fil des ans. Par exemple, il peut optimiser les images pour réduire leur poids sans compromettre la qualité, générer automatiquement des images réactives pour optimiser l'affichage sur les appareils mobiles et minifier le code CSS et JavaScript pour réduire la quantité de données à télécharger.

En 2018, Google a annoncé qu'il cesserait le développement actif de mod_pagespeed, mais continuerait à assurer le support de la version existante jusqu'en 2021. Après cela, le projet a été officiellement abandonné et Google ne fournit plus aucun support ni mise à jour.

Qu'est-ce que ngx_pagespeed ?

ngx_pagespeed est un port de mod_pagespeed pour le serveur Web NGINX. Il s'agit d'un module qui permet aux administrateurs système d'utiliser les mêmes fonctionnalités d'optimisation des performances que mod_pagespeed sur un serveur NGINX.

Le projet ngx_pagespeed a été créé par un groupe de développeurs indépendants qui souhaitaient porter la fonctionnalité mod_pagespeed sur un serveur Web autre qu'Apache. Le module ngx_pagespeed a été publié pour la première fois en 2012 et a constamment reçu des mises à jour et de nouvelles fonctionnalités au fil des ans.

Comme mod_pagespeed, ngx_pagespeed utilise pratiquement les mêmes techniques pour optimiser les performances des pages Web, telles que la compression d'image, la minification de CSS et JavaScript, et l'optimisation des requêtes du navigateur. De plus, ngx_pagespeed permet aux administrateurs système de configurer de manière granulaire les optimisations à appliquer aux pages Web, leur permettant d'adapter les performances aux besoins spécifiques de leur site Web.

Bien que ngx_pagespeed ait été créé par des développeurs indépendants, il a bénéficié du support de Google jusqu'en 2018 , date à laquelle Google a annoncé l'arrêt du développement actif de mod_pagespeed. Depuis, ngx_pagespeed a également été abandonné et ne fait l'objet d'aucune mise à jour ni d'aucun support officiel.

Où mod_pagespeed est-il encore utilisé ?

De nombreux panneaux de contrôle comme Plesk ou cPanel proposent mod_pagespeed comme fonctionnalité pour améliorer la vitesse et le score de vitesse de page des sites Web. Ces panneaux de contrôle permettent aux administrateurs système d'activer et de configurer facilement mod_pagespeed pour optimiser les performances de leurs pages Web.

Dans Plesk, mod_pagespeed est disponible sous forme d'extension, facile à installer et à configurer par l'administrateur du serveur. Une fois installée, Plesk propose une interface graphique permettant de paramétrer mod_pagespeed, notamment la compression d'images, la minification CSS et JavaScript, et l'optimisation des requêtes du navigateur.

cPanel propose également mod_pagespeed comme option d'optimisation des performances du serveur. À l'instar de Plesk, mod_pagespeed peut être facilement activé et configuré par l'administrateur du serveur. cPanel offre également une interface graphique permettant de configurer les paramètres de mod_pagespeed et de visualiser les résultats des optimisations de performances.

Même si mod_pagespeed n'est plus activement développé par Google, les panneaux de contrôle Plesk et cPanel continuent de l'utiliser comme fonctionnalité pour améliorer la vitesse et le score de vitesse de page des sites Web. Cependant, étant un projet abandonné, il n'y a plus de mises à jour ou de support officiel disponibles pour ces outils.

Pourquoi toujours utiliser mod_pagespeed ou ngx_pagespeed ?

L'informatique est un domaine en constante évolution, et ce qui est considéré comme correct aujourd'hui ne le sera peut-être plus demain. La technologie et la manière dont les utilisateurs interagissent avec elle évoluent sans cesse, et les développeurs et administrateurs système doivent être capables de s'adapter à ces changements pour garantir le bon fonctionnement de leurs sites web et répondre aux besoins des utilisateurs.

Souvent en faisant des recherches sur le net pour optimiser un site web, on tombe sur d'anciens posts, articles et guides qui font référence à une période bien précise, le lecteur n'est pas capable de comprendre le contexte de ce qu'il lit et pense à tort que ce guide d'optimisation qui recommande mod_pagespeed est toujours en vogue et donc ils se prêtent à suivre des tutoriels obsolètes qui non seulement n'apportent pas d'avantages en termes de performances, mais sont même nuisibles.

Google, leader du secteur des moteurs de recherche, a développé au fil des ans divers indicateurs et scores pour évaluer la qualité et les performances des sites web. Par exemple, Google a introduit les Google Core Web Vitals , un ensemble de mesures évaluant la vitesse, l'interactivité et la stabilité visuelle des pages web, ainsi que le score PageSpeed ​​Insights, qui évalue la vitesse et les performances des pages web sur les appareils mobiles et de bureau.

Ces changements dans les mesures de qualité du site Web ont eu un impact significatif sur l'outil mod_pagespeed créé par Google. Initialement conçu pour améliorer les performances des pages Web à l'aide de diverses techniques d'optimisation, mod_pagespeed est rapidement devenu obsolète en raison de l'évolution des métriques d'évaluation de Google. Dans certains cas, l'utilisation de mod_pagespeed peut même avoir un impact négatif sur les performances des pages Web, car les optimisations appliquées par l'outil peuvent ne plus être conformes aux directives actuelles de Google.

mod_pagespeed et Time To First Byte.

Le TTFB ( Time to First Byte) est une mesure qui indique le temps écoulé entre la requête d'une page web par un navigateur et la réception du premier octet de données du serveur. Il est considéré comme un indicateur de la vitesse du serveur et de la latence du réseau. Un TTFB élevé signale un serveur ou une connexion réseau lents , tandis qu'un TTFB faible signale un serveur et une connexion réseau rapides.

Le TTFB (Time To First Byte) est un paramètre important des Google Core Web Vitals , un ensemble de métriques mises en place par Google pour évaluer la vitesse, l'interactivité et la stabilité visuelle des pages web. Ces métriques sont essentielles car Google utilise ces informations pour évaluer la qualité des sites web et déterminer leur classement dans les résultats de recherche. Un TTFB élevé peut nuire à l'expérience utilisateur et à la visibilité d'un site web dans les moteurs de recherche.

Google recommande fortement un TTFB de 200 millisecondes maximum ; évidemment, une valeur optimale est certainement inférieure à 100 millisecondes et, comme nous le verrons, mod_pagespeed ne contribue pas à réduire le TTFB, contrairement à ce que beaucoup croient encore.

Quelqu'un sur le net avait déjà remarqué le problème et avait également ouvert des discussions sur GitHub, mais à cette époque l'accent était presque exclusivement mis sur les scores Pagespeed avec des métriques très discutables et qui ne tenaient pas compte de l'importance du TTFB.

Vous pouvez suivre la discussion originale (dont je reproduis la capture d'écran ci-dessous) à ce lien : https://github.com/apache/incubator-pagespeed-mod/issues/1293

Un autre avertissement est apparu dans une discussion StackOverflow, mentionnant sans détour que mod_pagespeed augmentait le TTFB. Vous pouvez consulter la discussion originale, bien qu'indécise, à ce lien : https://stackoverflow.com/questions/24099190/google-nginx-pagespeed-with-varnish-increases-ttfb

StackOverflow mod_pagespeed Vernis TTFB

Il est certes difficile de comprendre que, bien que mod_pagespeed soit un module Apache conçu pour améliorer les performances des pages web grâce à diverses techniques d'optimisation, il puisse augmenter le temps de réponse initial (TTFB) d'une page web en raison de la latence introduite par ses opérations d'optimisation. Il effectue des opérations d'optimisation telles que la compression d'images, la minification CSS et JavaScript, et l'optimisation des requêtes du navigateur. Ces opérations prennent du temps à s'exécuter, ce qui peut augmenter le TTFB.

De plus, mod_pagespeed utilise un algorithme de mise en cache pour mettre en cache les pages Web optimisées et réduire la latence des requêtes ultérieures. Cependant, si l'algorithme de mise en cache n'est pas configuré correctement, cela peut entraîner une augmentation du TTFB car le serveur doit d'abord extraire la page Web du cache avant de l'envoyer au navigateur.

Un exemple concret de la façon dont mod_pagespeed ralentit un site WordPress.

Par exemple, regardons un site comme lavocedeltrentino.it, un journal bien connu qui pensait pouvoir résoudre les problèmes de performances de leur site en passant de notre hébergement à celui d'un autre fournisseur improvisé qui a provoqué une dégradation des performances de cette norme .

Site migré Comparaison Pingdom avant après

Après un certain temps, le site partant d'un Apache brut sur Plesk, ils ont pensé qu'il était opportun d'ajouter mod_pagespeed comme technologie à valeur ajoutée pour améliorer la vitesse du site, et effectivement l'amélioration était là si l'on considère que de toute façon mod_pagespeed a un tout les effets d'un Full Page Cache interne qui en cas de lenteur extrême peut également améliorer considérablement les performances comme on peut le voir sur l'écran ci-dessous, atteignant un peu plus de trois secondes, avec une situation initiale malheureuse d'environ le double.

Pagespeed Pingdom

Si l'on examine en détail la réponse de curl, on constate qu'il utilise mod_pagespeed sur Plesk et que, depuis une connexion Fastweb sur fibre optique mixte cuivre, il présente un TTFB de 1,38 seconde, tandis que sur la capture d'écran suivante, testant un site utilisant exactement le même thème (Zox News), comme corrieredellacitta.com, le TTFB n'est que de 0,2 seconde, soit environ 7 fois plus rapide.

Si l'on examine également le TTFB mesuré au niveau européen par SpeedVitals , on constate encore plus en détail à quel point mod_pagespeed est vraiment mauvais en termes de performances, augmentant de manière embarrassante le TTFB avec des scores tous marqués en rouge, contrairement à ceux de ilcorrieredellacitta.com qui sont normaux.

SpeedVitals TTFB Exemple Europe

SpeedVitals TTFB lavocedeltrentino.it
SpeedVitals TTFB citycourier.com

Que faire si vous utilisez mod_pagespeed et comment le remplacer ?

Si vous utilisez mod_pagespeed ou ngx_pagespeed, il est fortement recommandé de supprimer l'extension de toute urgence. Ces modules, bien qu'initialement conçus pour améliorer les performances des pages Web, peuvent entraîner des problèmes de performances en raison de leur obsolescence et des nouvelles directives de Google.

La principale raison de supprimer ces extensions est que de nombreuses opérations d'optimisation effectuées par mod_pagespeed ou ngx_pagespeed peuvent être réalisées plus efficacement et de manière plus granulaire au niveau de l'application, par exemple grâce à l'utilisation de plugins dédiés tels que W3 Total Cache, Autoptimize, Wp Rocket ou des combinaisons de ces outils s'il s'agit d'une installation WordPress.

Par exemple, l'optimisation JS, la minification, la compression, le css critique, la suppression de code inutilisé et la livraison d'images webp peuvent être effectués de manière plus précise et personnalisable grâce à l'utilisation de ces plugins.

La suppression de mod_pagespeed ou ngx_pagespeed de votre serveur et l'utilisation de ces plugins pour optimiser les performances des pages Web vous permettront de vous adapter aux directives actuelles de Google et d'obtenir un contrôle plus précis et granulaire sur l'optimisation des performances de vos pages Web.

 

Vous avez des doutes ? Vous ne savez pas par où commencer ? Contactez-nous !

Nous avons toutes les réponses à vos questions pour vous aider à faire le bon choix.

Discute avec nous

Discutez directement avec notre support avant-vente.

0256569681

Contactez-nous par téléphone pendant les heures de bureau 9h30 - 19h30

Contactez-nous en ligne

Ouvrez une demande directement dans l'espace contact.

AVIS DE NON-RESPONSABILITÉ, Mentions légales et droits d'auteur. Red Hat, Inc. détient les droits sur Red Hat®, RHEL®, RedHat Linux® et CentOS® ; AlmaLinux™ est une marque commerciale de la AlmaLinux OS Foundation ; Rocky Linux® est une marque déposée de la Rocky Linux Foundation ; SUSE® est une marque déposée de SUSE LLC ; Canonical Ltd. détient les droits sur Ubuntu® ; Software in the Public Interest, Inc. détient les droits sur Debian® ; Linus Torvalds détient les droits sur Linux® ; FreeBSD® est une marque déposée de la Fondation FreeBSD ; NetBSD® est une marque déposée de la Fondation NetBSD ; OpenBSD® est une marque déposée de Theo de Raadt ; Oracle Corporation détient les droits sur Oracle®, MySQL®, MyRocks®, VirtualBox® et ZFS® ; Percona® est une marque déposée de Percona LLC ; MariaDB® est une marque déposée de MariaDB Corporation Ab ; PostgreSQL® est une marque déposée de PostgreSQL Global Development Group ; SQLite® est une marque déposée de Hipp, Wyrick & Company, Inc. ; KeyDB® est une marque déposée d'EQ Alpha Technology Ltd. ; Typesense® est une marque déposée de Typesense Inc. ; REDIS® est une marque déposée de Redis Labs Ltd ; F5 Networks, Inc. détient les droits sur NGINX® et NGINX Plus® ; Varnish® est une marque déposée de Varnish Software AB ; HAProxy® est une marque déposée de HAProxy Technologies LLC ; Traefik® est une marque déposée de Traefik Labs ; Envoy® est une marque déposée de CNCF ; Adobe Inc. détient les droits sur Magento® ; PrestaShop® est une marque déposée de PrestaShop SA ; OpenCart® est une marque déposée d'OpenCart Limited ; Automattic Inc. détient les droits sur WordPress®, WooCommerce® et JetPack® ; Open Source Matters, Inc. détient les droits sur Joomla® ; Dries Buytaert détient les droits sur Drupal® ; Shopify® est une marque déposée de Shopify Inc. ; BigCommerce® est une marque déposée de BigCommerce Pty. Ltd.; TYPO3® est une marque déposée de la TYPO3 Association; Ghost® est une marque déposée de la Ghost Foundation; Amazon Web Services, Inc. détient les droits sur AWS® et Amazon SES® ; Google LLC détient les droits sur Google Cloud™, Chrome™ et Google Kubernetes Engine™ ; Alibaba Cloud® est une marque déposée d'Alibaba Group Holding Limited ; DigitalOcean® est une marque déposée de DigitalOcean, LLC ; Linode® est une marque déposée de Linode, LLC ; Vultr® est une marque déposée de The Constant Company, LLC ; Akamai® est une marque déposée d'Akamai Technologies, Inc. ; Fastly® est une marque déposée de Fastly, Inc. ; Let's Encrypt® est une marque déposée d'Internet Security Research Group ; Microsoft Corporation détient les droits sur Microsoft®, Azure®, Windows®, Office® et Internet Explorer® ; Mozilla Foundation détient les droits sur Firefox® ; Apache® est une marque déposée de The Apache Software Foundation ; Apache Tomcat® est une marque déposée de The Apache Software Foundation ; PHP® est une marque déposée de PHP Group ; Docker® est une marque déposée de Docker, Inc. Kubernetes® est une marque déposée de The Linux Foundation ; OpenShift® est une marque déposée de Red Hat, Inc. ; Podman® est une marque déposée de Red Hat, Inc. ; Proxmox® est une marque déposée de Proxmox Server Solutions GmbH ; VMware® est une marque déposée de Broadcom Inc. ; CloudFlare® est une marque déposée de Cloudflare, Inc. ; NETSCOUT® est une marque déposée de NETSCOUT Systems Inc. ; ElasticSearch®, LogStash® et Kibana® sont des marques déposées d'Elastic NV ; Grafana® est une marque déposée de Grafana Labs ; Prometheus® est une marque déposée de The Linux Foundation ; Zabbix® est une marque déposée de Zabbix LLC ; Datadog® est une marque déposée de Datadog, Inc. ; Ceph® est une marque déposée de Red Hat, Inc. ; MinIO® est une marque déposée de MinIO, Inc. ; Mailgun® est une marque déposée de Mailgun Technologies, Inc. ; SendGrid® est une marque déposée de Twilio Inc. Postmark® est une marque déposée d'ActiveCampaign, LLC ; cPanel®, LLC détient les droits sur cPanel® ; Plesk® est une marque déposée de Plesk International GmbH ; Hetzner® est une marque déposée de Hetzner Online GmbH ; OVHcloud® est une marque déposée d'OVH Groupe SAS ; Terraform® est une marque déposée de HashiCorp, Inc. ; Ansible® est une marque déposée de Red Hat, Inc. ; cURL® est une marque déposée de Daniel Stenberg ; Facebook®, Inc. détient les droits sur Facebook®, Messenger® et Instagram®. Ce site n'est pas affilié, sponsorisé ou autrement associé à l'une des entités mentionnées ci-dessus et ne représente aucune de ces entités de quelque manière que ce soit. Tous les droits sur les marques et noms de produits mentionnés sont la propriété de leurs titulaires respectifs des droits d'auteur. Toutes les autres marques mentionnées sont la propriété de leurs titulaires respectifs. MANAGED SERVER® est une marque déposée européenne de MANAGED SERVER SRL, dont le siège social est situé Via Flavio Gioia, 6, 62012 Civitanova Marche (MC), Italie et le siège opérationnel Via Enzo Ferrari, 9, 62012 Civitanova Marche (MC), Italie.

JUSTE UN MOMENT !

Vous êtes-vous déjà demandé si votre hébergement était nul ?

Découvrez dès maintenant si votre hébergeur vous pénalise avec un site web lent digne des années 1990 ! Résultats immédiats.

Fermer le CTA
Retour en haut de page