SlimFaas, la plateforme FaaS (Function as a Service) légère pour Kubernetes, continue d'innover. Elle intègre désormais des fonctionnalités avancées d'autoscaling, de gestion de données distribuées et d'observabilité en temps réel. Pour les entreprises marocaines qui cherchent à optimiser leurs infrastructures cloud et à réduire leurs coûts, ces évolutions ouvrent de nouvelles perspectives. Elles permettent de construire des applications plus réactives, plus économes et plus faciles à gérer.
De 0 à N réplicas : l'autoscaling intelligent au service de votre performance
À l'origine, SlimFaas permettait de passer automatiquement une fonction de 0 à N réplicas lors de l'arrivée d'une requête HTTP. Ce mécanisme, appelé "scale-to-zero", est idéal pour les applications à usage intermittent. Imaginez une API de traitement documentaire qui reste complètement arrêtée lorsqu'elle n'est pas utilisée, puis qui démarre instantanément dès qu'un fichier est soumis. Vous ne payez que pour les ressources consommées, ce qui représente une économie substantielle pour votre infrastructure.
Le mode asynchrone et le publish/subscribe
Le mode asynchrone de SlimFaas permet de placer les appels dans une file d'attente persistante. Vous contrôlez ainsi le nombre de traitements exécutés en parallèle et gérez automatiquement les tentatives en cas d'échec. Cette approche est parfaite pour les pipelines de données où la fiabilité est cruciale.
SlimFaas propose aussi des mécanismes de publish/subscribe. Une application peut publier un événement qui sera ensuite transmis à tous les réplicas des fonctions abonnées. Vous découplez ainsi les producteurs et les consommateurs, sans que l'émetteur ait besoin de connaître chaque service destinataire.
Exemple concret pour le marché marocain
Lors de l'ajout d'un document dans une plateforme de gestion électronique, un événement peut être publié puis consommé simultanément par plusieurs fonctions :
- Extraction du texte pour l'indexation et le référencement.
- Détection de données sensibles pour la conformité réglementaire.
- Génération d'embeddings pour alimenter un moteur de recherche sémantique.
- Création d'une miniature pour l'affichage dans l'interface utilisateur.
Chaque traitement peut évoluer et scaler indépendamment, offrant une flexibilité maximale.
Le scaling de N à M : une adaptabilité encore plus fine
SlimFaas ajoute désormais le scaling de N à M réplicas. Une fonction déjà démarrée peut adapter son nombre de pods à partir de métriques Prometheus et de requêtes PromQL. Le scaling peut notamment s'appuyer sur :
- Le nombre de requêtes par seconde.
- La latence des réponses.
- La consommation CPU.
- Une métrique métier personnalisée.
- La taille d'une file d'attente SlimFaas.
Exemple : lorsqu'une queue contient plusieurs centaines de documents à traiter, SlimFaas augmente automatiquement le nombre de workers. Une fois la charge absorbée, le nombre de pods diminue progressivement, jusqu'à éventuellement revenir à zéro. Cette gestion dynamique des ressources est un atout majeur pour les entreprises qui connaissent des pics d'activité saisonniers.
Nouveau : Data Files et Data Sets pour une gestion avancée des données
Data Files : des fichiers volumineux streamés sans saturation mémoire
L'API Data Files permet de stocker temporairement et de transmettre des fichiers binaires en streaming. Le contenu est écrit directement sur disque, puis récupéré en streaming par les fonctions, sans devoir charger l'intégralité du fichier en mémoire. Cette fonctionnalité peut être utilisée pour des fichiers de quelques Ko, mais également pour des fichiers dépassant 256 Mo.
Exemple : dans un pipeline d'ingestion pour l'IA générative, une application peut déposer un PDF, une archive ZIP, un fichier audio ou une présentation. Plusieurs fonctions peuvent ensuite récupérer ce fichier pour en extraire le contenu, générer des embeddings, enrichir les métadonnées, puis alimenter une base vectorielle. Le streaming permet de traiter de gros volumes tout en limitant la consommation mémoire des applications et des workers.
Data Sets : un cache distribué inspiré de Redis
SlimFaas propose également une API Data Sets, comparable à un stockage clé-valeur Redis léger et distribué. Elle permet de conserver temporairement du JSON, des états, des flags, des valeurs de cache ou des compteurs avec une durée de vie configurable. Des opérations atomiques comme INCR, INCRBY, INCRBYFLOAT, DECR et DECRBY permettent de modifier des compteurs sans conflit lorsque plusieurs applications accèdent simultanément à la même valeur.
Exemple : plusieurs frontaux web peuvent partager un compteur distribué pour limiter un utilisateur à 1 000 requêtes par jour. Le même mécanisme peut servir à suivre un quota mensuel de tokens d'IA générative, à limiter les appels vers une API externe ou à comptabiliser le nombre de traitements exécutés par une équipe.
Observabilité en temps réel : l'interface web SlimFaas
SlimFaas intègre une interface web permettant de visualiser les fonctions, les jobs, les réplicas, les files d'attente, les ressources Kubernetes et les règles d'autoscaling. Une vue de l'infrastructure permet également d'observer en temps réel les messages circulant entre les utilisateurs, SlimFaas, les queues, les publishers, les subscribers et les différentes fonctions.
Exemple : pendant l'exécution d'un pipeline documentaire, un opérateur peut voir immédiatement un fichier arriver, un événement être publié, les messages entrer dans les queues, les fonctions abonnées démarrer et le nombre de réplicas évoluer. Cette interface facilite le diagnostic, la compréhension des flux et l'observabilité des architectures distribuées. Pour les entreprises marocaines, c'est un outil précieux pour garantir la performance et la fiabilité de vos applications critiques.
Une plateforme complète pour l'ère du cloud et de l'IA
Avec ces nouveautés, SlimFaas va désormais bien au-delà du simple scale-to-zero. Le projet devient progressivement une plateforme légère pour l'autoscaling, les traitements asynchrones, les architectures événementielles, les pipelines d'IA générative, le partage de données temporaires et l'observabilité des applications Kubernetes.
Cela se teste en 5 minutes sur n'importe quelle infrastructure Kubernetes existante. SlimFaas est dans la sandbox CNCF, est open source et disponible sur GitHub. Pour les entreprises marocaines qui souhaitent optimiser leur infrastructure cloud, réduire leurs coûts et améliorer leur réactivité, SlimFaas est une solution à explorer sans attendre.
N'hésitez pas à nous contacter pour un audit de votre infrastructure et pour découvrir comment ces technologies peuvent s'intégrer à votre stratégie de transformation digitale.