Que signifie Function as a service (FaaS) ?
Développer et lancer des applications ne requiert désormais plus une installation de serveurs. Le FaaS permet de procéder de manière serverless.
Le FaaS, c'est quoi ?
La liste des services cloud qui circulent sur le marché ne cesse de s'allonger pour répondre aux besoins des clients et développeurs. Le FaaS, ou Function as a Service, en fait partie. Ce terme désigne un service cloud qui donne à ses utilisateurs la possibilité de déployer et d'exécuter une fonction individuelle d'une application, le tout en mode serverless. Il faut savoir que développer un logiciel requiert en temps normal le recours à des serveurs coûteux. Cependant, la généralisation du cloud computing a eu raison de ces méthodes archaïques, avec l'apparition de solutions cloud telles que l'IaaS, le PaaS et le FaaS.
Pour faire court, le Function as a Service, ou FaaS, est un système basé sur une technologie serverless à laquelle les développeurs peuvent avoir recours pour développer et lancer une fonction individuelle, et non l'intégralité du logiciel.
Comme le FaaS s'exécute sans serveurs, la maintenance constante des infrastructures et l'exécution en arrière-plan des processus ne sont plus nécessaires. Les applications déployées en tant que fonctions individuelles sur le FaaS s'exécutent automatiquement suivant des évènements prédéterminés. Ainsi, à l'apparition d'un évènement ou d'une date spécifique, quelques millisecondes suffisent à la fonction sur le FaaS pour se déclencher et traiter individuellement les demandes correspondantes. En cas de requêtes multiples, le système FaaS multiplie la fonction en créant autant de copies que nécessaire pour gérer la demande. Ainsi, ce service cloud est capable de se mettre automatique à l'échelle. Une fois les requêtes individuelles traitées, le processus s'arrête automatiquement et attend le prochain évènement déclencheur pour se relancer.
Comment est facturé l'usage du FaaS ?
Les services du cloud computing sont connus pour proposer des alternatives économiquement plus attrayantes aux entreprises et aux développeurs. Le FaaS n'y fait pas exception. Comme il s'agit d'une architecture serverless, les utilisateurs de ce service cloud n'ont pas à payer la location permanente d'un serveur pour exécuter leurs fonctions planifiées. Le FaaS fonctionne selon un modèle de facturation différent. En effet, seules les ressources utilisées sont facturées au client, et non les temps d'inactivité de l'application. Le modèle de facturation se limite ainsi au temps d'exécution de la fonction individuelle, ce qui revient immanquablement moins cher.
Dans quels cas utiliser le FaaS ?
L'architecture serverless du FaaS ne convient pas forcément à toutes les situations. Le recours à cette solution cloud est notamment indiqué dans le cas d'une charge de travail dynamique qui requiert une seule exécution de la fonction dans une période déterminée. Autrement, le FaaS est particulièrement indiqué dans le cadre du développement de microservices, mais aussi dans le traitement de requêtes web et de tâches planifiées.
Pourquoi utiliser le FaaS ?
En tant que service cloud, sans oublier sa technologie serverless, le FaaS présente plus d'un avantage d'utilisation pour ses clients. Outre son indiscutable attractivité économique et son modèle de facturation basé sur les temps d'exécution uniquement, le FaaS :
- Rend le travail des développeurs plus rapide et augmente de ce fait leur productivité ;
- Permet de créer des fonctions en utilisant n'importe quel langage de programmation ;
- Simplifie l'exécution des tâches planifiées ;
- Gère sans problème les transactions de données volumineuses en les scalant.