Plateforme Edge Cloud de Fastly

Solutions numériques innovantes

Revenir au blog

Follow and Subscribe

Disponible uniquement en anglais

Cette page n'est actuellement disponible qu'en anglais. Nous nous excusons pour la gêne occasionnée, merci de revenir sur cette page ultérieurement.

Les piliers de résilience de Fastly : créer un Internet plus robuste

Brian Haberman

Ingénieur distingué

Cet article est la première partie de la série « Les piliers de la résilience » de Fastly, qui explore la manière dont nous concevons, créons et exploitons notre réseau mondial pour garantir une disponibilité et des performances maximales. Lire la série complète :

Chaque requête compte. Des transactions au streaming, l’expérience utilisateur repose sur la latence et la fiabilité. Un site web lent ou indisponible ne fait pas qu’agacer les utilisateurs, il impacte les résultats, érode la confiance dans la marque et entraîne une perte de revenus. À l’échelle mondiale, le défi consistant à livrer du contenu de manière fiable est multiplié de façon exponentielle.

Vous nous avez déjà entendu parler de résilience. Nous en sommes un peu accros, certains diraient même obsédés, par ce sujet. Il s’agit d’une philosophie fondamentale ancrée dans notre culture, notre architecture et nos processus. Certains des principes dont nous allons parler ont déjà été rendus publics [1][2]. Mais nous les réunissons tous pour illustrer comment Fastly a conçu son réseau pour une résilience maximale. Nous explorerons les principes et les technologies fondamentaux qui nous permettent non seulement de livrer du contenu de manière ultra-rapide, mais aussi de le faire avec une disponibilité constante. Nous les appelons nos piliers de résilience.

Le défi de la distribution mondiale

Imaginez que vous essayiez de diffuser un seul contenu, comme une image, à des centaines de millions d’utilisateurs dispersés à travers le monde. Tous ces utilisateurs ne sont pas géographiquement proches d’un emplacement unique hébergeant le contenu. Ils n’utilisent probablement pas non plus tous le même réseau d’accès. Ce contenu peut provenir de n’importe où sur Internet. S’il est populaire, de nombreuses personnes le demandent. Ce paradigme de distribution mondiale présente un ensemble de défis particuliers :

  • Latence géographique : la vitesse de la lumière est une limite physique. Une requête d’un utilisateur situé à Londres vers un point of presence (PoP) à Sydney sera toujours plus lente qu’une requête vers un PoP à Paris, peu importe la puissance des serveurs du PoP de Sydney.

  • Congestion du réseau : le trafic internet n’est pas uniforme. Certaines routes peuvent être submergées, ce qui entraîne des goulots d’étranglement et une dégradation des performances.

  • Points de défaillance uniques : une coupure de fibre, une panne de courant ou même une erreur de configuration dans un seul data center peut mettre hors ligne une grande partie d’un réseau.

  • Événements hostiles : des attaques par déni de service distribué (DDoS) aux activités malveillantes ciblées, le réseau doit être prêt à absorber et à atténuer un barrage constant de menaces.

Vous en avez assez des pannes ? Faites configurer gratuitement votre multi-CDN par nos experts

Bénéficier de l’offre

Pour un Content Delivery Network (CDN), ce ne sont pas de simples problèmes théoriques, ce sont les réalités du quotidien. La valeur d’un CDN est directement liée à sa capacité à surmonter ces défis de manière constante et à distribuer le contenu des clients aux utilisateurs finaux. Pour nos clients, un CDN hautement disponible et résilient n’est pas un « luxe », c’est une exigence fondamentale. En transférant la distribution de contenu vers un CDN comme Fastly, les entreprises bénéficient d’avantages considérables :

  1. Disponibilité garantie : votre site web ou votre application reste accessible même s’il y a un problème avec votre serveur d’origine ou une route réseau majeure.

  2. Performances supérieures : le contenu est servi depuis le PoP disponible le plus proche, réduisant ainsi la latence et garantissant une expérience utilisateur plus rapide et plus réactive.

  3. Économies de coûts : en absorbant les pics de trafic et en atténuant les attaques, un CDN résilient réduit la charge sur votre propre infrastructure, réduisant ainsi les coûts opérationnels.

  4. Tranquillité d’esprit : vous pouvez vous concentrer sur le développement de votre produit principal, sachant que le mécanisme de distribution sous-jacent est conçu pour résister à la nature imprévisible d’Internet.

Pour être clair, personne n’est à l’abri : les perturbations arrivent, elles font partie de la vie lorsqu’on exploite une infrastructure globale et complexe. La résilience consiste à détecter le début de la perturbation le plus rapidement possible, à minimiser l’impact de la perturbation. C’est la vitesse à laquelle les services reviennent à leurs niveaux normaux. La véritable mesure d’une plateforme n’est pas la prévention des pannes, mais la façon dont elle y répond et s’en remet.

La résilience du système détermine la profondeur et la largeur du creux d’impact

Le socle de la résilience : l’observabilité

Avant d’aborder les piliers spécifiques, nous aborderons d’abord une capacité fondamentale qui les traverse tous : l’observabilité.

Vous ne pouvez pas créer un système résilient si vous ne comprenez pas son comportement. Chez Fastly, nous pensions qu’observer un système ne consiste pas seulement à regarder des métriques simples comme l’utilisation du processeur ou la bande passante. Il s’agit de pouvoir répondre à des questions arbitraires sur l’état du réseau à tout moment. On peut citer notamment :

  • Métriques : suivi des métriques de performances tels que le taux de requêtes, la latence et le taux de connexion au cache.

  • Logs : capture d’enregistrements détaillés d’événements pour diagnostiquer les problèmes.

  • Traces : suivre une seule requête au cours de son acheminement dans le système pour identifier les goulots d’étranglement et les points de défaillance.

Des métriques simples ne peuvent que prendre en charge des opérations de réseau réactives. Elles ne fournissent pas assez de contexte, en particulier compte tenu de la complexité d’un CDN mondial. Prenez en compte la visualisation suivante :

Chaque permutation de l’état de production (code, configuration, charge de travail) est différente

L’état réel de notre système change constamment. Le logiciel n’est pas statique, l’état du réseau n’est pas statique, les charges de travail des clients ne sont pas statiques. Nous devons exploiter un réseau qui ne dispose d’aucune base de référence pour la comparaison. À mesure que ces variables évoluent, notre vision de la normalité évolue.

Nos ingénieurs ont accès à une vue en direct et complète de chaque partie du réseau. 2,1 billions de points de données chaque jour. Notre fréquence de collecte de base est de 15 secondes, mais avec la capacité de capturer certaines métriques à des fréquences bien plus élevées pour faciliter le diagnostic et le débogage. Nous disposons d’un ensemble de base de métriques qui sont toujours collectées, ainsi que d’autres ensembles qui peuvent être activés lorsque le début d’un problème est détecté. La collecte des métriques peut également être configurée pour capturer à différents percentiles (par exemple, 99,9999 % versus 99,99 %), car certains événements ont des apparences distinctives à différentes résolutions.

Cette observabilité approfondie est essentielle pour tout, de la maintenance proactive à la réponse rapide aux incidents. Elle nous permet non seulement de détecter les problèmes, mais aussi de comprendre leur cause profonde avec précision, une étape incontournable pour créer un système véritablement résilient. Notre capacité d’observabilité facilite également la planification des capacités basée sur les données et les optimisations du système. Cela nous permet d’effectuer des ajustements avant qu’un incident ne se produise.

Il est crucial que chacun comprenne qu’une telle capacité n’est pas gratuite. La collecte d’un tel volume de données est coûteuse. Plusieurs pipelines de données doivent être maintenus pour récolter les métriques. Un stockage back-end est nécessaire pour héberger les métriques. Des ressources de compute sont nécessaires pour transformer les données en informations. Il n’est pas surprenant que l’observabilité soit l’une de nos 3 principales catégories de dépenses d’infrastructure, mais nous pensons que cette dépense est nécessaire pour réellement comprendre notre infrastructure complexe.

À venir ?

Dans les articles à venir, nous explorerons les différents piliers de la résilience qui constituent le fondement de notre infrastructure mondiale. Nous expliquerons comment nous concevons notre réseau pour qu’il soit hautement disponible, comment nous le créons pour qu’il résiste aux perturbations et comment nous l’exploitons pour faire face aux événements les plus difficiles et nous en remettre.

Prêt à commencer ?

Contactez-nous dès aujourd’hui