Si votre site web est toujours lent malgré l'utilisation d'un CDN, intéressez-vous à ces problèmes courants liés au CDN.
Cet article s'articule autour des points suivants :
Copier le lien de l'article
Un réseau de diffusion de contenu (CDN) est un groupe de serveurs distribués qui mettent en cache, ou enregistrent des copies de contenu web pour permettre une diffusion rapide aux utilisateurs finaux. En plus de la mise en cache, les CDN peuvent accélérer la diffusion de contenu et améliorer l'expérience utilisateur de différentes manières, par exemple avec l'assistance au streaming vidéo, au contenu dynamique, ainsi qu'au chiffrement et à l'authentification SSL.
N'importe quel site web peut bénéficier d'un CDN. Les CDN se situent entre les utilisateurs finaux et les serveurs d'origine. Ils répondent aux requêtes des utilisateurs avec tout le contenu dont ils disposent dans le cache avant de transmettre les requêtes aux serveurs d'origine. Cela permet de rendre le chargement d'un site web plus rapide pour les utilisateurs. C'est un peu comme si vous achetez de la nourriture dans une épicerie au lieu de traverser le pays pour visiter plusieurs fermes et usines afin de faire ses courses hebdomadaires, c'est plus rapide.
La plupart du temps, s'inscrire à un CDN doit rapidement rendre un site web plus rapide, aider les opérateurs de sites web à réduire les coûts de bande passante, améliorer la fiabilité du site, et augmenter la résistance à certaines cyberattaques (comme les attaques DDoS). Cependant, il arrive que des problèmes de CDN empêchent les propriétés web de profiter de ces avantages. Voici quelques problèmes potentiels liés aux CDN, les facteurs qui peuvent les favoriser et des recommandations pour les résoudre.
Un certain nombre de problèmes peuvent empêcher un site web de bénéficier des améliorations des performances, voire le ralentir lors de l'utilisation d'un CDN.
Manque de portée mondiale : les performances peuvent varier selon le réseau CDN utilisé. Veillez à utiliser un CDN qui met en cache le contenu partout sur son réseau et dispose de sites mondiaux proches des utilisateurs finaux.
Problèmes de serveur d'origine : si le CDN ne peut pas récupérer le contenu du serveur d'origine, il ne peut ni le mettre en cache ni le distribuer. Cela peut se produire lorsque les serveurs d'origine sont à l'arrêt, ou lorsque le trafic entre les serveurs d'origine et le CDN est pris dans des goulots d'étranglement du réseau.
Contenu dynamique ne se chargeant pas depuis le serveur d’origine : le contenu dynamique ne peut pas être mis en cache. Si le serveur d’origine ne répond pas correctement aux requêtes, la page peut se charger lentement, voire ne pas se charger du tout, indépendamment du comportement de mise en cache du CDN. Certains CDN, tels que ceux de Cloudflare, comprennent des services supplémentaires qui peuvent accélérer la distribution de contenu dynamique.
Fichiers non optimisés : des contenus très volumineux ou certains types de fichiers peuvent ne pas être mis en cache, en fonction des limites du CDN. Vérifiez que tout le contenu est optimisé pour une diffusion rapide et une expérience utilisateur de qualité. De nombreux CDN disposent de fonctionnalités pour optimiser, « minifier» (réduire la taille du fichier) ou compresser le contenu.
Ressources bloquant le rendu : il s'agit d'éléments d'une page qui empêchent le reste de la page de se charger. Les fichiers de feuilles de style en cascade (CSS), par exemple, sont des ressources qui bloquent le rendu. Si le reste d'une page est correctement mis en cache, mais que les fichiers CSS ne le sont pas, alors le fichier CSS doit être récupéré depuis le serveur web avant que les autres éléments de la page puissent être servis depuis le cache. Cela peut ralentir le temps de chargement des pages. Vérifiez que les ressources bloquant le rendu sont mises en cache, ou réorganisez l'architecture de la page pour qu'aucunes ressources inutiles ne soient incluses ou pour qu'elles soient chargées en dernier.
Scripts tiers non mis en cache : de nombreux sites web comprennent des scripts provenant d'autres sources ; il est possible que ces sources n'utilisent pas le même CDN. Ces scripts tiers peuvent mettre plus de temps à se charger si leurs serveurs d'origine sont éloignés géographiquement, non optimisés pour la diffusion ou surchargés. Si les scripts sont des ressources bloquant le rendu, cela peut ralentir l'ensemble de la page. Utilisez les outils pour développeurs de Chrome pour évaluer ce qui se charge lentement et déterminer d'où cela provient. Envisagez de remplacer les scripts qui ralentissent constamment une page ou d'utiliser des scripts hébergés via CDNJS, un réseau de diffusion de contenu gratuit qui sert des milliers de bibliothèques JavaScript et CSS.
Le taux d'accès au cache CDN est faible : dans la mise en cache, un « cache miss » (échec de cache) signifie que le contenu demandé n'a pas été trouvé dans le CDN et doit être récupéré depuis le serveur d'origine. Un « cache hit » (accès au cache) signifie que le contenu demandé a été trouvé dans le cache et servi à partir de celui-ci. Le taux d'accès au cache mesure le rapport entre les accès réussis et les échecs pour un site web donné. Un faible taux d'accès au cache signifie que la majorité de la page web n'est pas servie depuis le cache, et que le navigateur de l'utilisateur doit la récupérer depuis le serveur d'origine. Chaque échec de cache peut également entraîner des frais de trafic sortant pour les sites web, en fonction du fournisseur d'hébergement, ce qui se traduit par des coûts opérationnels plus élevés pour ces sites web.
Les faibles taux d'accès au cache peuvent survenir pour plusieurs raisons :
Gardez à l'esprit que le taux d'accès au cache n'est pas le seul indicateur qui compte en matière de performances d'un site web. Une vision globale des performances web tient compte des signaux web essentiels et d'autres indicateurs qui influencent l'expérience utilisateur, le SEO et l'optimisation par l'IA.
Si le contenu se charge rapidement, mais qu’il s’agit de mauvais contenu, ne tenant pax compte des mises à jour ou des changements récents, la durée de vie (TTL) peut être trop longue pour le contenu mis en cache. La durée de vie est un paramètre qui mesure, en secondes, combien de temps un contenu doit être mis en cache avant que le CDN (ou le navigateur) ne rafraîchisse sa copie enregistrée. Réduisez la durée de vie du contenu qui ne se met pas à jour suffisamment rapidement. Essayez de vider le cache pour que le CDN récupère à nouveau le contenu du serveur d'origine.
Le contenu qui est mis à jour fréquemment peut nécessiter des règles spéciales de mise en cache. Dans certains cas, il ne doit pas être mis en cache du tout. Cloudflare dispose d'une fonction de purge qui permet de purger immédiatement le contenu d'une page web du cache.
Si un domaine et tous ses sous-domaines ne pointent pas vers le CDN, le contenu associé à ces domaines ne sera pas mis en cache et le site web ne bénéficiera d'aucun avantage en matière de performances.
Veillez à ce que les sous-domaines soient configurés correctement. Les sous-domaines (configurés via un enregistrement CNAME) doivent être configurés séparément. Si un sous-domaine n'est pas derrière le CDN, quand bien même le domaine principal l'est, son contenu ne sera pas mis en cache.
Les CDN fournissent souvent des certificats SSL pour les sites web. Les certificats SSL permettent d'authentifier la connexion de l'utilisateur au site Web, de chiffrer les données sensibles saisies par l'utilisateur et d'éviter aux utilisateurs les avertissements de sécurité dans le navigateur. Il arrive toutefois qu'un site web serve du contenu « mixte », c'est-à-dire qu'une partie du contenu d'une page web est servi via une connexion SSL et l'autre non. Les utilisateurs peuvent recevoir des avertissements du navigateur concernant la sécurité de la page, la page peut ne pas réussir à se charger ou se charger plus lentement (car le navigateur essaie et ne parvient pas à lancer les négociations TLS).
Ces erreurs peuvent survenir si une page web contient du contenu provenant de sources externes ou de sous-domaines qui ne sont pas répertoriés sur le certificat SSL. La console de développement de Chrome peut aider les développeurs à résoudre les erreurs de contenu mixte : les développeurs peuvent voir d'où provient le contenu et quelles URL sont utilisées.
D'autres erreurs SSL peuvent être liées au certificat du domaine. Découvrez les problèmes SSL courants ici.
Besoin d'aide avec le CDN Cloudflare ? Rejoignez la communauté Cloudflare pour obtenir une assistance gratuite et des informations de la part d'utilisateurs experts de Cloudflare.
Un CDN (réseau de diffusion de contenu) est un groupe de serveurs distribués qui enregistrent des copies du contenu web afin de le diffuser rapidement aux utilisateurs. Au-delà de la mise en cache, les CDN accélèrent la livraison de contenu et améliorent l'expérience utilisateur grâce à des services qui prennent en charge la diffusion, le contenu dynamique, l'atténuation des attaques DDoS et l'utilisation de TLS.
Les CDN accélèrent le chargement des sites web pour les utilisateurs en se plaçant entre les utilisateurs finaux et les serveurs d'origine et en accélérant la diffusion du contenu des sites web. La distance entre les utilisateurs et le contenu qu'ils demandent étant réduite et les fichiers étant optimisés, ils peuvent être livrés plus rapidement.
Plusieurs problèmes peuvent ralentir les performances du CDN, notamment un manque de portée mondiale, des problèmes de serveur d'origine, un contenu dynamique qui ne se charge pas correctement, des fichiers non optimisés, des ressources bloquant le rendu, des scripts tiers non mis en cache ou un faible taux d'accès au cache.
Un faible taux d'accès au cache signifie que la majorité du contenu d'une page web n'est pas servi depuis le cache du CDN, ce qui oblige le navigateur de l'utilisateur à le récupérer directement depuis le serveur d'origine. Selon l'architecture de la page web concernée, cela peut entraîner un ralentissement du temps de chargement de la page et potentiellement augmenter les coûts opérationnels en raison des frais de trafic sortant.
Un faible taux de correspondance dans le cache peut résulter de règles de cache mal configurées, de niveaux de mise en cache variables pour les ressources selon le type d'URL (comme les chaînes de requête), ou de conflits entre les en-têtes de contrôle de cache des serveurs d'origine et les règles de mise en cache du CDN.
Du contenu obsolète peut apparaître si le paramètre de durée de vie (TTL) du contenu mis en cache est trop élevé. La durée de vie détermine combien de temps le contenu est mis en cache avant que le CDN ou le navigateur ne rafraîchisse sa copie. Une des solutions à ce problème est de réduire la durée de vie ou effacer le cache.