Qu’est-ce qu’un CDN ?

Un CDN (Content Delivery Network ou réseau de diffusion de contenu) est un réseau d’ordinateurs géographiquement distribués et reliés entre eux. Ils peuvent héberger des « petits » fichiers (scripts JavaScript, feuilles de styles CSS, fichiers HTML statiques) ou des fichiers plus « volumineux » (notamment des vidéos ou des images) et répartir la charge en cas de pic d’affluence sur le site ou l’application web avec, pour objectif, d’améliorer l’expérience utilisateur.

Un réseau CDN permet le transfert rapide des ressources nécessaires au chargement d’un contenu web notamment les pages HTML, les fichiers JavaScript, les feuilles de style, les images et les vidéos. La popularité des services CDN ne fait que croître. La majorité du trafic web d’aujourd’hui est acheminée via ce type de réseau, y compris le trafic provenant de sites importants, tels que Facebook, Netflix et Amazon.

Le temps de chargement d’une page étant un critère très important pour l’utilisateur (d’après une étude du cabinet Deloitte en 2019, une diminution du temps de chargement des pages de 0,1 seconde permet d’augmenter le taux de conversion de 3 à 10% selon les secteurs et de diminuer sensiblement le taux de rebond), on comprend l’importance du CDN pour :

  • Réduire les temps de réponse et la latence : les CDN ont des points de présence répartis dans le monde, ce qui permet de rapprocher le contenu des utilisateurs et de réduire le temps de réponse. Les CDN peuvent également réduire la latence en utilisant des serveurs plus proches des fournisseurs d’accès.
  • Réduire le nombre de requêtes sur notre serveur : les CDN peuvent réduire le trafic web sur notre serveur en hébergeant des fichiers statiques. Cela laisse plus de temps pour répondre aux “vraies” requêtes.
  • Sécuriser le site contre les attaques DDoS : les CDN offrent également des services de sécurité distribués contre les attaques DDoS. En répartissant le trafic sur plusieurs serveurs, les CDN peuvent absorber les attaques DDoS et contribuer à maintenir le site en ligne.

 

Comme le précise Thomas, consultant architecte Senior et Scrum Master

La plupart des bibliothèques et framework « Front » (Angular, React, Vue, Bootstrap, FontAwesome, Facebook, Twitter, etc.) sont déjà disponibles sur de nombreux CDN publics et il suffit la plupart du temps d’une balise HTML pour les ajouter en version optimisée à un site web.

Balise

On peut en général cibler la dernière version ou bien une version antérieure pour peu qu’elle soit toujours supportée et / ou pas « trop ancienne ».

 

Qu’en est-il de Microsoft Azure CDN ?

Microsoft Azure CDN (ainsi que Cloudfare d’ailleurs) propose une utilisation plus évoluée des CDN pour ses propres artefacts.

Azure CDN permet de déployer votre propre instance CDN pour héberger des composants WebPart, des bibliothèques et d’autres ressources personnalisées, ce qui vous permet d’appliquer des clés d’accès à votre stockage CDN et d’exercer un contrôle accru sur votre configuration CDN.

Azure CDN offre aux développeurs une solution globale non seulement pour distribuer rapidement du contenu haut débit en le mettant en cache sur des nœuds physiques disposés stratégiquement dans le monde entier, mais aussi, en accélérant l’accès au contenu dynamique qui ne peut pas être mis en cache. En effet, Azure CDN a recours à diverses optimisations réseau au moyen de POP de CDN (point of presence ou point de présence) comme l’optimisation d’itinéraire pour contourner le protocole de passerelle frontière (BGP) par exemple.

Les avantages de l’utilisation d’Azure CDN

Les avantages de l’utilisation d’Azure CDN pour distribuer les ressources de site web incluent :

  • Une amélioration des performances et une expérience enrichie pour les utilisateurs finaux, en particulier ceux qui utilisent des applications dans lesquelles de nombreux allers-retours de requêtes sont nécessaires pour charger du contenu.
  • Une mise à grande échelle pour améliorer la gestion instantanée des charges importantes, par exemple le début de l’événement de lancement d’un produit.
  • Une distribution des requêtes utilisateur et une diffusion de contenu effectuées directement à partir de serveurs de périphérie afin que le trafic envoyé au serveur d’origine soit moins important.

 

Différence entre CDN et mise en cache

La mise en cache consiste à stocker des copies de fichiers dans un emplacement de stockage temporaire afin d’y accéder plus rapidement.

On a consacré un article complet sur la mise en cache en général et azure redis cache en particulier https://www.softfluent.fr/blog/mise-en-cache-en-general-et-azure-redis-cache-en-particulier

 

Les deux procédés ne s’opposent pas, ils sont même complémentaires.

Ne ratez plus aucune actualité avec la newsletter mensuelle de SoftFluent

Newsletter SoftFluent