Qu'est-ce qu'un CDN, comment fonctionnent-ils et pourquoi devriez-vous en utiliser un ?!

Publié: 2016-03-22

Imaginez un monde dans lequel chaque page Web se charge instantanément, sans une seule milliseconde de temps d'attente. Bien que cela ne soit pas encore possible, des technologies émergent qui nous aident à nous rapprocher de quelques pas.

Un réseau de diffusion de contenu (ou CDN en abrégé) est l'une des étapes vers la réalisation de cet objectif.

Dans cet article, j'expliquerai ce qu'est un CDN, comment un modèle CDN se compare au modèle d'hébergement Web traditionnel, discuterai des avantages et des inconvénients de l'utilisation d'un CDN pour votre site Web, et enfin, vous montrerai comment démarrer votre site Web. avec un CDN.

Qu'est-ce qu'un CDN ?

Un CDN est un système de serveurs Web, géographiquement dispersés à travers le monde, dont chacun héberge une copie de votre site Web, afin d'améliorer la manière dont votre contenu est livré à vos utilisateurs.

Quel est l’objectif principal d’un CDN ?

L'objectif principal d'un CDN est de proposer le contenu de votre site Web plus efficacement ( c'est-à-dire plus rapidement ) aux utilisateurs finaux.

Si vous utilisez un CDN, lorsqu'un utilisateur charge le contenu de votre site Web, le serveur CDN le plus proche de l'utilisateur fournira ce contenu.

Étant donné que le contenu a moins de distance à parcourir, il parvient plus rapidement à l'utilisateur, ce qui signifie que les temps de chargement de votre site Web sont plus rapides !

Mais comme nous le verrons, ce n’est pas le seul avantage d’utiliser un CDN !

Comment fonctionne un CDN ?

Comme nous l'avons déjà évoqué, lorsque vous utilisez un CDN dans le cadre de votre configuration d'hébergement Web, chacun des serveurs du réseau héberge une copie de votre site Web.

Ces serveurs CDN sont appelés serveurs « Edge » car ils se trouvent en périphérie du réseau et les plus proches des utilisateurs.

Cela contraste avec le serveur « d’origine », qui est fourni par votre société d’hébergement Web et où vos fichiers sont automatiquement téléchargés et stockés lorsque vous créez et mettez à jour votre site Web.

Schéma de base du fonctionnement d'un CDN.

Vous vous demandez peut-être comment votre site Web passe du serveur d'origine à ces serveurs périphériques ?

Eh bien, cela dépend si votre CDN est un push ou un pull

Qu'est-ce que Pull CDN (et comment ça marche) ?

Une configuration pull CDN fonctionne en extrayant les fichiers du serveur d'origine , au fur et à mesure qu'ils sont nécessaires.

La première fois qu'un utilisateur demande un fichier, le serveur Edge devra lire le fichier depuis votre serveur d'origine (c'est-à-dire votre fournisseur d'hébergement actuel).

Le serveur Edge stockera ensuite une version mise en cache de ce fichier. Une version « en cache » signifie simplement une copie du fichier à partir de ce moment particulier.

Les futures demandes pour le fichier proviendront directement du serveur Edge (plutôt que d'être extraites du serveur d'origine), jusqu'à ce que le fichier expire (devienne obsolète).

Après expiration, le fichier devra à nouveau être actualisé à partir du serveur d'origine et mis en cache.

Qu'est-ce qu'un Push CDN (et comment ça marche) ?

Un CDN push permet aux utilisateurs de télécharger (« push ») leurs fichiers sur le CDN lui-même, et les fichiers sont ensuite immédiatement distribués aux serveurs Edge, une fois téléchargés.

Ainsi, vos fichiers sont déjà stockés sur chaque serveur Edge, sans avoir besoin d'être extraits d'un serveur d'origine.

Il s'agit d'une option moins courante ; cependant, il est avantageux pour distribuer des fichiers multimédias volumineux , puisqu'une copie du média sera toujours stockée sur les serveurs Edge.

Un CDN remplace-t-il votre hébergement web ?

Non, un CDN ne remplace pas votre hébergement web . Ils travaillent en conjonction.

Vos fichiers originaux sont tous stockés sur le serveur de votre hébergeur. Il s'agit du serveur d'origine.

Les serveurs CDN contiennent uniquement des copies des fichiers sur le serveur d'origine.

Si vous vous débarrassez de votre hébergement Web, le CDN n'aura aucun endroit où copier les fichiers !

Résumé vidéo d'un CDN

Si vous êtes encore un peu confus, voici une courte vidéo qui explique un CDN en termes très simples :

Qu'est-ce qu'un CDN ?

Le problème de l'hébergement Web sans CDN

Avec le modèle d'hébergement Web traditionnel, tous les fichiers de votre site Web (HTML, CSS, images, etc.) sont hébergés en un seul endroit dans le monde – essentiellement là où se trouve le centre de données de votre fournisseur d'hébergement Web.

Lorsque les utilisateurs finaux accèdent à votre site Web, le contenu du site est toujours récupéré à partir de cet emplacement .

Il y a plusieurs inconvénients à cela :

1. Les vitesses diminuent avec la distance

Si le centre de données de votre fournisseur d'hébergement Web est situé au Texas, chaque fois qu'un utilisateur souhaite charger votre site Web, le contenu sera fourni depuis ce centre de données du Texas.

Les vitesses de transfert ont tendance à diminuer à mesure que l’utilisateur s’éloigne géographiquement de votre serveur, car les fichiers doivent parcourir une plus grande distance. Plus un utilisateur est éloigné du centre de données, plus le chargement de votre site Web est long.

Ainsi, un utilisateur de site Web au Royaume-Uni chargera votre site Web plus lentement qu’un utilisateur aux États-Unis, en raison de sa proximité avec le centre de données du Texas.

2. Taux de transfert limités

Imaginons une situation dans laquelle plusieurs utilisateurs tentent tous de charger votre site Web en même temps.

Tout comme votre ordinateur personnel a des limites quant à la vitesse à laquelle les fichiers peuvent être transférés sur le réseau (taux de débit), les serveurs ont également des limites quant à la vitesse à laquelle ils peuvent transférer des fichiers.

Votre hébergement Web actuel est-il préparé pour un tel pic de trafic ?

Considérez spécifiquement les solutions d’hébergement mutualisé, où les taux de transfert ne sont pas spécifiés. Dans ces environnements et dans d’autres, les taux de transfert peuvent être assez limités, ce qui peut entraîner un impact notable sur les performances en cas d’augmentation du trafic vers votre site Web.

Pour ces raisons, une augmentation du trafic peut augmenter les temps de chargement de votre site Web, car le contenu du site Web est envoyé à tous les utilisateurs finaux en même temps.

Les avantages d’utiliser un CDN

Avec un modèle CDN, nous pouvons surmonter les inconvénients du modèle d'hébergement Web traditionnel. En effet, un CDN présente plusieurs avantages, tels que :

1. Temps de chargement plus rapides (en diffusant le contenu du serveur le plus proche de l'utilisateur)

N'oubliez pas que plus l'utilisateur est éloigné du centre de données de votre fournisseur d'hébergement, plus le chargement de votre site Web prendra du temps, car les fichiers doivent être transférés sur une plus grande distance.

Un CDN diffusera le contenu d'un serveur périphérique qui est soit le plus proche, soit le plus efficace pour chaque utilisateur final, en fonction de l'endroit où il se trouve dans le monde.

Par exemple, si quelqu'un en Chine chargeait votre site Web, le CDN pourrait automatiquement charger une copie du contenu de votre site Web à partir d'un serveur en Chine. Si quelqu'un devait accéder à votre site depuis le Royaume-Uni, un serveur au Royaume-Uni pourrait être utilisé à la place pour charger votre site Web pour cet utilisateur spécifique.

Le CDN déterminera automatiquement quel serveur est le choix le plus efficace pour chaque utilisateur final.

Schéma d'un modèle d'hébergement traditionnel par rapport à un modèle CDN.

2. Meilleure gestion des pics de trafic (par transfert dispersé de fichiers)

Comme mentionné précédemment, les serveurs contiennent des restrictions sur la quantité de données qui peuvent être transférées simultanément par leur intermédiaire. Un CDN contribue à améliorer les performances de votre site Web lorsque plusieurs utilisateurs tentent d'y accéder en même temps.

Compte tenu de la nature du fonctionnement du CDN, les requêtes simultanées adressées à votre site Web seront probablement traitées par plusieurs serveurs situés dans plusieurs régions du monde, en fonction de la provenance des requêtes.

De cette façon, un serveur particulier n’est pas inondé de toutes les demandes des utilisateurs. Les fournisseurs de CDN mettront également en œuvre d'autres procédures afin de garantir que vos fichiers se chargeront efficacement même en cas de pic de trafic.

3. Meilleure sécurité (grâce à l'atténuation et à la protection DDoS)

Une attaque DDoS se produit lorsque votre serveur est inondé de requêtes illégitimes pour votre site Web, dans le but de faire planter votre site ou de provoquer une augmentation des frais de bande passante en raison d'un transfert excessif.

Votre fournisseur CDN proposera probablement des mécanismes de détection et d'atténuation DDoS, qui contribueront à améliorer les performances et la disponibilité de votre site Web en cas d'attaque DDoS.

Les inconvénients de l’utilisation d’un CDN

L’utilisation d’un CDN présente cependant quelques inconvénients.

1. Coût : les CDN sont généralement payants à l'utilisation

Les fournisseurs de CDN facturent souvent en fonction de la quantité de contenu que vous transférez. Pour cette raison, votre coût mensuel varie selon le mois .

Votre fournisseur d'hébergement Web actuel peut déjà inclure un certain montant de transfert mensuel dans le cadre de votre forfait d'hébergement actuel ; par conséquent, vous devrez vous demander si le coût supplémentaire du CDN est viable pour la présence en ligne de votre entreprise.

Notez que les fournisseurs de « push CDN » facturent souvent également l’espace de stockage (voir ci-dessous).

Pour vous aider à comprendre ce qu’il vous en coûtera pour passer au cloud, envisagez le scénario suivant…

Supposons que la taille de votre site Web soit de 1 Mo et que votre fournisseur CDN facture 0,085 $/Go de transfert. Le coût pour 10 000 utilisateurs accédant à l’intégralité de votre site Web serait : ((1/1024)×10 000) ÷ 0,085 = 114 cents, ou 1,14 $ pour 10 000 requêtes .

Comme vous pouvez le constater, ce n’est pas un coût exorbitant.

Cependant, de nombreuses offres CDN lisent vos fichiers depuis leur emplacement de stockage chez votre fournisseur d'hébergement actuel, ce qui représente un coût supplémentaire. Ce serveur d'origine peut être un système de stockage de fichiers tel qu'Amazon S3, ou il peut s'agir de votre fournisseur d'hébergement actuel.

Si votre site Web contient du contenu dynamique, vous devrez toujours maintenir une solution d'hébergement capable de traiter ces types de fichiers.

Étant donné que les solutions CDN sont souvent payantes à l'utilisation, une attaque DDoS peut s'avérer financièrement défavorable : l'augmentation drastique des transferts de fichiers provoquée par ce type d'attaque entraînerait une augmentation des coûts pour votre entreprise.

Cependant, les fournisseurs de CDN s'efforcent de détecter et d'atténuer ces types d'attaques, comme indiqué précédemment.

Remarque : bon nombre des meilleurs fournisseurs d'hébergement Web incluent désormais des services CDN gratuits dans leurs forfaits.

2. Configuration supplémentaire nécessaire pour mettre en cache le contenu changeant

Gardez à l'esprit qu'un CDN fonctionne en mettant en cache des copies du contenu de votre site Web à travers le monde.

Cependant, la plupart des sites Web incluent du contenu qui change en fonction de l'utilisateur spécifique accédant au site Web ou d'autres critères (messages de bienvenue pour un utilisateur spécifique, paniers d'achat, etc.).

Ce type de contenu n'est pas aussi simple à mettre en cache à travers le monde, car il est constamment mis à jour selon les demandes.

Les fichiers en streaming sont une autre forme de contenu qui nécessite une attention particulière pour être utilisé dans le CDN. Voir ci-dessous pour plus de détails.

Autres considérations relatives au CDN

Actualisation du cache de fichiers lors de la mise à jour de vos fichiers

Lorsque vous devez mettre à jour l'un de vos fichiers à l'aide d'un pull CDN, toutes les copies mises en cache dans le monde devront également expirer afin qu'elles soient actualisées lors de la prochaine demande.

Pour que cela se produise, vous devrez peut-être soit attendre le délai d'expiration par défaut (qui varie selon le fournisseur), soit forcer l'invalidation immédiate des fichiers mis en cache (en vidant le cache manuellement).

Même si la mise à jour de vos fichiers peut impliquer cette étape supplémentaire, les fichiers statiques de votre site Web ne seront probablement pas mis à jour trop souvent.

Garantir un délai d’expiration suffisant pour les fichiers rarement consultés

Les solutions Pull CDN ne contiennent pas nécessairement une copie de vos fichiers sur chaque serveur Edge à tout moment (discuté plus en détail ci-dessous). S'il n'existe pas déjà de version en cache d'un fichier, le fichier doit être extrait du serveur d'origine.

Cela pose davantage de problèmes pour les fichiers plus volumineux tels que les vidéos, car l'impact sur les performances du chargement de ces types de fichiers à partir du serveur d'origine peut être ressenti de manière assez significative.

Certaines solutions à ce problème consistent à augmenter le délai d'expiration du fichier mis en cache (si possible), afin que le fichier n'ait pas besoin d'être actualisé à partir du serveur d'origine aussi fréquemment, ou à stocker des fichiers volumineux sur une solution push CDN (voir ci-dessous). ).

Contenu statique ou dynamique

Les sites Web contiennent deux principaux types de données : le contenu statique et le contenu dynamique.

La plupart du contenu que vous voyez sur un site Web (c'est-à-dire l'apparence, les images, les vidéos, les fichiers CSS et JavaScript, etc.) est généralement du contenu statique. Le contenu statique ne change jamais (sauf si vous téléchargez à nouveau le fichier source).

Par exemple, l'apparence du logo de votre entreprise ne changera pas, peu importe qui visite votre site Web ou combien de fois vous rechargez la page.

Le contenu dynamique change en fonction de la personne qui demande les données ou d'autres critères.

Par exemple, lorsque John se connecte à son compte bancaire, il voit ses soldes. Cependant, lorsque David se connecte, les soldes ne sont pas les mêmes que ceux que voit Joe.

Autre exemple : après vous être connecté au tableau de bord WordPress, vous verrez un message tel que « Salut, John ! ».

Le contenu qui change en fonction de l'utilisateur ou d'autres critères est considéré comme un contenu dynamique.

Comment un CDN gère-t-il le contenu statique, dynamique et en streaming ?

À ce stade, nous arrivons à une question importante : « Quels types de fichiers puis-je stocker sur le CDN ?

Étant donné que les fichiers statiques ont tendance à rester les mêmes à tout moment, quelle que soit la personne qui charge votre site Web, ils sont bien adaptés pour être mis en cache partout dans le monde via un CDN, car les fichiers sont rarement mis à jour.

En ce qui concerne le contenu dynamique (c'est-à-dire un panier d'achat), il n'existe généralement pas un seul fichier pouvant être mis en cache dans le monde, car il change souvent en fonction de chaque utilisateur ou d'autres critères.

Cependant, les fournisseurs de CDN mettent en œuvre des solutions pour améliorer l'efficacité du chargement du contenu dynamique, comme trouver l'itinéraire le plus rapide entre l'utilisateur et votre serveur d'hébergement.

De nombreux fournisseurs de CDN ont également mis en œuvre des solutions pour diffuser des médias en direct et à la demande via un CDN.

Comment configurer un CDN

Alors maintenant, vous pensez probablement : « Je suis convaincu que mon site Web a besoin d'un CDN ! Comment faire la transition ? ».

La réponse dépend du fournisseur d'hébergement que vous utilisez et du type de solution CDN que vous souhaitez.

Certains fournisseurs d'hébergement Web proposent une option permettant d'activer facilement CDN via leur panneau de contrôle. D'autres configurations nécessitent quelques étapes supplémentaires.

Ajoutez une couche CDN à l'ensemble de votre site Web

Cette option est l’une des plus simples à mettre en place pour les propriétaires de petites entreprises. Chaque demande des utilisateurs pour accéder au contenu de votre site Web sera d'abord filtrée via un système géré par un fournisseur CDN.

Le contenu statique sera chargé à partir du CDN, tandis que le contenu dynamique sera chargé directement depuis votre serveur existant (ou une technique pourrait être utilisée pour améliorer le temps de chargement du contenu dynamique, comme indiqué précédemment).

Un pull CDN sera effectivement implémenté en coulisses afin de distribuer des fichiers via le CDN.

CloudFlare est l'une de ces entreprises qui propose ce type de solution CDN. Certaines sociétés telles que CloudFlare proposeront également d'autres améliorations pour les performances de votre site Web au-delà du seul CDN.

Comment le configurer

La principale étape de la configuration de ce type de système CDN consiste à mettre à jour les enregistrements DNS de votre site Web pour pointer vers la couche CDN. La couche CDN acheminera ensuite les requêtes vers votre serveur d'origine si nécessaire.

Vous devrez toujours conserver votre solution d’hébergement actuelle pour que le CDN puisse en extraire les fichiers.

Comment configurer un Pull CDN

Vous précisez l'emplacement de vos fichiers sur votre serveur d'origine à distribuer sur le CDN. Le CDN extraira ensuite les fichiers du serveur d'origine si nécessaire.

Vous devrez également soit mettre à jour les liens vers les fichiers de votre site Web vers le point de terminaison du CDN, soit mettre à jour vos paramètres DNS pour pointer vers le CDN.

Comment configurer un CDN Push

Téléchargez vos fichiers sur le fournisseur CDN. Vous devrez également soit mettre à jour les liens vers les fichiers de votre site Web vers le point de terminaison du CDN, soit mettre à jour vos paramètres DNS pour pointer vers le CDN.

Dois-je quitter mon hébergeur Web ?

Non. Même après avoir acheté une solution CDN, vous devrez rester chez un fournisseur d’hébergement Web.

Gardez à l’esprit qu’un CDN est utilisé pour mettre en cache le contenu ; si votre site Web contient du contenu dynamique, vous devrez toujours conserver votre solution d'hébergement actuelle afin de traiter ce contenu.

Quelles sociétés d'hébergement proposent un CDN ?

De nos jours, de nombreuses sociétés d’hébergement proposent un CDN dans le cadre de leurs plans d’hébergement partagé :

  • SiteGround (utilisez leur propre CDN SiteGround sur mesure)
  • Bluehost (Cloudflare est pré-activé)
  • Kinsta (un forfait Cloudflare payant est inclus gratuitement)
  • WP Engine (un forfait Cloudflare payant est inclus gratuitement)
  • HostGator (Cloudflare est inclus dans le plan Business uniquement)
  • IONOS (Cloudflare est inclus uniquement dans le forfait Expert)
  • Cloudways (Cloudflare Enterprise peut être ajouté pour seulement 4,99 $ par mois)

Conclusion

Les CDN sont une solution viable pour améliorer l'efficacité de votre site Web en réduisant le temps nécessaire au transfert des fichiers aux utilisateurs. Cela sert probablement à augmenter la fidélisation des clients sur votre site Web et peut-être même à améliorer votre classement dans les résultats de recherche.

Les CDN réduiront également la charge des demandes de fichiers sur votre configuration d'hébergement actuelle, ce qui peut vous aider à gérer de gros volumes de trafic.

Cependant, un CDN a souvent un coût plus élevé. Votre site Web mérite l’amélioration des performances qu’un CDN pourrait offrir, mais les avantages doivent l’emporter sur les coûts potentiels et autres compromis.

N'oubliez pas qu'un CDN n'est qu'une des nombreuses mesures que vous pouvez prendre pour améliorer les performances de votre site Web. Choisir un hébergeur rapide est la première (et la plus importante).

Et il existe également de nombreuses autres choses que vous pouvez faire pour augmenter généralement la vitesse de votre site Web (comme la compression d’images), et spécifiquement améliorer les temps de chargement de votre site WordPress !

Avez-vous utilisé un CDN pour votre site Web ? Faites-nous savoir dans les commentaires ci-dessous ce que vous pensez des CDN !