Introduction
Dans cet article, je passe en revue les difficultés techniques rencontrées par quiconque cherche à résoudre la problématique des applications SaaS distribuées à faible latence. Et la manière dont ces difficultés peuvent être contournées, en partie du moins.
Les critères de réussite : des applications avec état, offrant la latence la plus faible possible, partagées entre des utilisateurs géographiquement proches. L'application doit être hébergée par le fournisseur SaaS, et ce pour deux raisons : la validation des calculs côté fournisseur et la haute disponibilité pour l'ensemble des participants.
Le problème
Comme vous l'imaginez, ce problème trouve aujourd'hui plusieurs réponses : recourir à des fournisseurs cloud pour le calcul dans quelques zones densément peuplées, à des Content Delivery Networks pour relier les zones plus reculées, et à des infrastructures on-premises là où les fournisseurs cloud ne sont pas présents.
Pour autant, raccorder et piloter un tel ensemble reste une opération complexe que seules les plus grandes entreprises, comme Valve, peuvent assumer. Cela pourrait bientôt évoluer, et voici pourquoi.
Réseau
La limite physique, pour le public des applications à faible latence, ce sont les réseaux eux-mêmes. Si les CDN excellent à connecter de multiples fournisseurs entre eux, les utilisateurs restent largement livrés à eux-mêmes : chaque saut de trafic ajoute de la latence et dégrade la qualité de l'expérience. Cette limite est incontournable : dans certaines régions, seuls de nouveaux projets d'infrastructure terrestres ou sous-marins permettront de résoudre ces problèmes. Des technologies de rupture comme Starlink apportent la connectivité dans des zones bien plus isolées, mais leur latence reste rédhibitoire pour les applications à faible latence.
La limite logicielle, elle, tient à l'interconnexion du trafic entre fournisseurs cloud, CDN et matériels divers. Ce verrou a déjà sauté, et la solution est disponible librement.
Compute et provisioning
Pour franchir la limite physique liée à la vitesse et à la connectivité du réseau, il faudra provisionner l'hébergement des applications SaaS au plus près des utilisateurs. Cela a un coût, et pose la question du pilotage d'une telle infrastructure.
La réponse universelle, ce serait un cluster Kubernetes avec des nœuds répartis sur de nombreux sites. D'après ces benchmarks, les conteneurs ne tournent que 0,12 % plus lentement que les processus natifs.
Pour provisionner des nœuds à la demande, il faudrait exploiter une solution d'infrastructure comme Terraform, afin de solliciter les API des fournisseurs cloud (AWS, GCP, Azure), les data centers sous VMware et d'autres hyperviseurs. Une part importante du travail consisterait à maintenir cette solution dans la durée.
Gestion et facturation
L'avancée majeure des fournisseurs cloud, désormais tenue pour acquise, c'est le modèle Pay-As-You-Go. Sur AWS, il suffit de renseigner sa carte bancaire pour démarrer une machine virtuelle. Sans aucun engagement.
Pourtant, de nombreux data centers classiques peinent encore à mettre leur environnement à disposition en ligne via des outils de cloud privé. L'un des grands enjeux porte sur les performances de ces machines et l'évaluation du rapport performances/prix. Lancer un pilote reste la meilleure façon d'obtenir un benchmark adapté à votre workload.
Au final, le provisioning à la demande et la capacité Spot à l'échelle mondiale constituent le principal verrou pour des applications à faible latence véritablement plébiscitées à grande échelle. Les économies d'échelle des grands fournisseurs cloud suivant la demande, les capacités historiques sont déjà déployées aux bons endroits. De nombreuses équipes planchent sur des solutions à faible latence : ce n'est qu'une question de temps avant qu'un standard de provisioning compute n'émerge et s'impose. Tout comme Kubernetes s'est imposé pour la gestion de l'infrastructure compute.
DoiT met à disposition une technologie intelligente et une expertise multi-cloud pour aider les organisations à comprendre et tirer parti des clouds publics tels qu'Amazon Web Services (AWS), Google Cloud (GCP) et Microsoft Azure, au service de leur croissance. Découvrez les offres DoiT sur doit.com.