La nécessité d’équilibrer la puissance de calcul et la latence a fait de l’informatique de périphérie un sujet brûlant, alimenté en partie par l’émergence de la 5G Edge, qui promet une latence ultra-faible. La latence de 10 ms de la 5G Edge <est fondamentale pour permettre la réalité virtuelle, l’Internet des objets (IoT) et les véhicules autonomes. Sans Edge computing, ces fonctionnalités seraient sérieusement limitées.
Alors que la technologie 5G Edge progresse rapidement, les réseaux de diffusion de contenu (CDN) ont permis des cas d’utilisation de calcul de périphérie pendant de nombreuses années, offrant une capacité réseau massive et seulement quelques millisecondes de latence à pratiquement tous les appareils connectés et utilisateurs d’Internet de la planète. Les CDN sont bien établis et se sont révélés très efficaces pour diffuser de grands flux de contenu à grande échelle. La plateforme Verizon Media, aujourd’hui Edgio, par exemple, offre une capacité de sortie de plus de 250 Tbps et dispose de plus de 7 000 réseaux du dernier kilomètre, offrant une évolutivité, des performances et une sécurité mondiales.
Cela place le CDN Edge aux commandes en tant que moyen très rentable de déplacer les applications et les charges de travail depuis le cloud et plus près des utilisateurs finaux. De longs allers-retours vers les serveurs centraux peuvent ralentir l’expérience utilisateur et limiter le type d’applications développées. Pousser le traitement des applications vers la périphérie CDN ouvre de nouvelles opportunités pour ajouter des fonctionnalités et créer de meilleures expériences utilisateur.
L’essor des applications de périphérie
Mais quelle est la meilleure façon de développer des applications à la périphérie ? Malgré le buzz incessant, l’informatique de périphérie en est encore aux premiers stades de développement. En tant que tel, l’avenir de l’informatique de périphérie « grand public » sera probablement bien différent de ce qu’il y paraît aujourd’hui. Un changement important que nous attendons est l’émergence de ce que nous appelons les « applications de périphérie ». Ce sont des fonctions hautement optimisées, entièrement testées et pré-intégrées au CDN qui peuvent être activées rapidement et facilement. Ceux-ci fonctionnent conjointement avec notre fonctionnalité Functions@Edge qui permet aux développeurs d’écrire et d’exécuter leur code dans le CDN Edge, offrant ainsi aux clients un large éventail de capacités informatiques possibles.
Les applications Edgio sont conçues pour résoudre des cas d’utilisation courants tels que:
- Redirections dynamiques
- Optimisation des images
- Bord latéral inclus (ESI)
- Priorisation des visiteurs
Edgio applications abaisse la barrière du calcul de périphérie en donnant aux clients accès à des outils de calcul de périphérie sans avoir besoin de développer et de prendre en charge du code.
Même si les applications de calcul de périphérie spécifiques peuvent varier considérablement en termes de fonctionnalité globale ou de secteur cible, de nombreuses exigences sous-jacentes sont presque identiques d’une application à l’autre. Ces similitudes couvrent des protocoles et des flux de travail standardisés. Edgio applications tire parti de ce fait pour simplifier le déploiement et accélérer l’adoption des capacités de calcul de périphérie.
Comme indiqué à gauche de la figure ci-dessous, les clients CDN peuvent interagir avec nos applications via une configuration simple. Ils utilisent notre API Rules Engine pour activer ou désactiver une application particulière. La partie droite de la figure ci-dessous montre comment les applications sont créées et mises à jour via notre pipeline ci/CD. Après le développement initial, de nouvelles fonctionnalités et fonctions sont continuellement ajoutées via une boucle de rétroaction robuste. Dans ce modèle, nous pouvons voir comment tout le monde sur l’ensemble du réseau utilise l’application. Nous pouvons utiliser cette entrée pour corriger des bogues, ajouter des fonctionnalités clés et résoudre des problèmes de sécurité. Les clients renoncent à un certain contrôle, mais obtiennent un modèle de déploiement simplifié et ne sont pas surchargés de créer et de maintenir des pipelines ci/CD pour chaque fonction. Ceci est particulièrement utile pour les fonctions qui ne sont pas très différenciées mais qui sont pourtant nécessaires dans divers cas d’utilisation.
Figure 1. Le modèle de développement original Verizon Media Edge applications.
Cela contraste avec le modèle Functions@Edge, illustré ci-dessous, où chaque client est responsable de son développement. Au fur et à mesure que de nouvelles fonctions sont développées, elles sont déployées sur le CDN Edge à l’aide de l’API Functions@Edge. Bien que cela offre plus de contrôle, il transfère la charge de développement à l’utilisateur. Il incombe à chaque développeur/organisation de suivre les rapports de bogues, de rassembler les demandes de fonctionnalités et de déployer de nouvelles versions et correctifs pour leur fonction Edge particulière. Les organisations qui ont besoin de fonctions personnalisées ou ponctuelles qui ne sont pas communes à plusieurs clients ou qui sont hautement spécialisées devraient utiliser Functions@Edge pour développer les fonctionnalités dont elles ont besoin. Mais pour les cas d’utilisation courants de calcul de périphérie, Edgio applications peut les apporter en interne et les proposer comme des services gérés.
Figure 2. Modèle de développement Functions@Edge.
Exemples d’applications EDGIO : optimisation de l’image
Le processus que nous utilisons pour déterminer quelles applications de périphérie développer commence par les commentaires de nos clients. Les demandes multiples de clients pour la même fonctionnalité sont un bon indicateur de sa popularité et de sa valeur pour un large éventail d’organisations. Un exemple qui revient fréquemment est l’optimisation d’image, une application qui peut redimensionner et optimiser les images pour le compte des clients CDN pour leurs clients (internautes).
L’optimisation d’image est devenue une application importante pour réduire les temps de chargement des pages Web contenant des images. Plutôt que de stocker les versions d’image dans l’application ou sur le stockage d’origine, une application de périphérie d’optimisation d’image s’intègre dans le traitement des requêtes du CDN pour transformer de manière transparente les images au fur et à mesure qu’elles sont servies, éliminant ainsi le coût du stockage et améliorant les temps de chargement des clients. Les clients utilisent Verizon Media Platform Rules Engine pour fournir des critères de correspondance tels que l’extension d’URL (par exemple, jpg), l’hôte ou le chemin d’URL pour accéder à une application d’optimisation d’image Edge.
À première vue, un optimiseur d’image peut sembler être un simple effort de développement, mais en creusant sous la surface, vous découvrirez une complexité considérable. Un serveur d’optimisation d’image Edge doit gérer le redimensionnement d’image de base et diverses autres options conçues pour faciliter le formatage dynamique d’image. Les fonctions prises en charge dans une application d’optimisation d’image de contour doivent idéalement inclure un large éventail de fonctions telles que :
- Redimensionnement de base de la largeur et de la hauteur
- Conversions de format
- Réduction de la qualité
- Gestion du DPR (ratio de pixels du périphérique)
- Dimensionnement automatique via une base de données de périphériques
- Garniture et rembourrage
- Ajustement de l’image à une région ou dans un canevas avec une couleur d’arrière-plan facultative
- Rotation et flou des images
- Quantification linéaire ou logarithmique des tailles d’image pour réduire les variations de la mémoire cache
- Suppression automatique des métadonnées
L’application d’optimisation d’image doit gérer les conseils client pour les pages réactives si elle est activée via le moteur de règles et optimisée pour la mise en cache à plusieurs niveaux. L’application doit également tirer parti de la fonctionnalité de cache CDN, telle qu’un bouclier d’origine, qui met en cache le contenu pour minimiser les requêtes au serveur d’origine. Comme le montre l’image ci-dessous, les résultats de la transformation pourraient être mis en cache à un point de protection, puis servis et mis en cache à des points de protection en périphérie pour réduire la latence et le nombre d’invocations de l’application.
Figure 3. Un flux de requêtes optimisé minimise les requêtes vers le serveur d’origine.
Les demandes d’optimisation d’image sont conçues pour tirer parti de la mise en cache CDN. Les requêtes entrantes sont acheminées vers le nœud de cache approprié à l’aide d’un hachage cohérent afin d’optimiser la localisation du cache. Le premier noeud de cache CDN qui reçoit une requête applique une logique en deux phases. Dans la première phase, le noeud de cache calcule la clé de cache et la recherche dans le cache. Si le fichier n’est pas présent dans le cache, alors il extrait l’image de base dans le cas de l’optimisation de l’image. L’image de base renvoyée dans la réponse serait alors optimisée à la volée car elle est mise en cache et renvoyée au client.
Il est difficile pour les développeurs d’optimiser pleinement ces fonctionnalités, comme décrit ici, lors de la création de leurs fonctions de périphérie, ce qui explique pourquoi nous attendons des applications de périphérie qu’elles jouent un rôle si important dans l’informatique de périphérie à l’avenir.
Conclusion
L’avènement de la 5G a entraîné l’essor de l’informatique de périphérie et la reconnaissance du fait que le transfert des charges de traitement vers la périphérie peut réduire la latence par rapport au cloud, améliorer l’expérience client et ouvrir de nouvelles catégories d’applications. Avec sa latence inférieure à 10 ms, la 5G Edge est un must pour la réalité virtuelle ou les véhicules autonomes. Pour la plupart des autres applications, les CDN sont plus établis que la 5G et sont seulement quelques millisecondes plus lents pour chaque utilisateur et appareil sur la planète que la 5G Edge. À mesure que les entreprises et les développeurs de logiciels poussent davantage de charges de travail de calcul à la périphérie, le CDN prend une importance supplémentaire au-delà de son rôle traditionnel de diffusion de contenu. Cela ouvre la voie à de nouvelles applications et services qui ne seraient pas réalisables dans le seul cloud en raison de la latence liée au cloud computing.
Une façon de réduire les obstacles à l’adoption de l’informatique de périphérie est avec Edgio applications. Cette approche permet aux organisations d’accéder à une application particulière, telle que l’optimisation d’image, par le biais d’une configuration de règles simple au lieu d’un effort de développement à grande échelle. Edgio applications bénéficie d’une boucle de rétroaction riche, car de plus en plus d’organisations à travers le monde profitent de ce service, qui, selon nous, jouera un rôle majeur dans l’adoption du calcul de pointe.
Qu’il s’agisse d’une amélioration progressive de l’expérience client ou de l’introduction d’applications révolutionnaires, une chose est claire : apporter davantage de fonctionnalités de calcul à la périphérie changera fondamentalement la façon dont les applications sont développées et déployées pour le mieux.