FaaS, Functions-as-a-Service, pourrait bien devenir le plus haut niveau d’abstraction pour les services Cloud.

Les grands acteurs du cloud et des services cloud cherchent à faire évoluer leurs technologies vers des niveaux d’abstraction toujours plus élevés.

Tout a commencé avec le partage et la revente d’infrastructures virtualisées, le IaaS (Infrastructure-as-a-Service).

Puis la progression dans la sophistication avec les analytiques, le machine learning, les services de réseaux, ou encore les backends de développement et d’applications s'est traduite par le PaaS (Platform-as-a-Service). Voilà qui tombe bien, les éditeurs dévoilent aujourd’hui des stratégies de plateformes.

Pour autant, il existe un échelon supérieur dans l’échelle d’abstraction logique de l’infrastructure support du cloud, ce que des géants comme AWS ou Microsoft appellent le Serverless Computing, ou encore le FaaS (Functions-as-a-Service).

L’appellation est maladroite, les services de code comme AWS Lambda, Azure Logic Apps ou Google Cloud Functions s’exécutent toujours sur des serveurs et des architectures physiques, généralement dans des conteneurs de type Docker. Toutefois, pour l'utilisateur, serverless signifie qu’il n'a pas besoin de se soucier des détails du déploiement, de la surveillance du serveur ou du dimensionnement des ressources.

MS-Serverless-1

FaaS se veut donc l’approche la plus éloignée des détails de mise en œuvre, tournée vers le haut pour des services de valeur, qui cependant reste soumise à une interprétation large. Selon Microsoft, c’est un concept identifié par plusieurs attributs importants :

  • L'abstraction complète des serveurs de l'utilisateur ;
  • Des services pilotés par les événement, qui sont dynamiquement et instantanément évolutifs ;
  • Un modèle de tarification des services en micro-facturation basée sur la consommation des ressources et des exécutions, pas sur la taille des instances.

L'avantage est évident pour les développeurs, qui supprime la nécessité de se soucier de l'infrastructure et augmente d’autant le temps de se concentrer sur la logique métier d'une application. Avec la réduction des processus DevOps et les cycles plus courts. Cependant, Faas ne convient pas à tous les problèmes, et certains modules doivent intégrer d'autres modèles de programmation qui nécessitent des PaaS et IaaS persistants.

MS-Serverless-2

  • Ci-dessus, un exemple de FaaS via Logic Apps de Microsoft, une version Azure de BizTalk Server qui fournit l’orchestration de la charge de travail serverless entre les sources de données et d'autres applications de cloud computing et de services.

Même s’ils n’en sont qu’aux premiers stades des attentes des analystes ou des marketeurs, les services d'intégration de l'entreprise ne sont pas nouveaux. Par contre, ils intègrent des concepts comme l'analyse de données sophistiquées, le machine learning, et des services cognitifs pour des choses comme la modélisation statistique prédictive, l'image ou la reconnaissance vocale en les rendant accessibles aux non-développeurs.

Les organisations qui apprennent à intégrer correctement les fonctions dans une architecture cloud nativement sans serveur d'application (FaaS), y trouveront un puissant outil de développement de modules microservices qui offre des avantages importants, pour compléter et non pas remplacer les conteneurs d'application et les plateformes de cloud plus avancées pour les données et les services d’intelligence artificielle.

Image d’entête 520623218 @ iStock ojogabonitoo