Comment construire un service SaaS
🛠️

Comment construire un service SaaS

Impacts sur l’architecture du service

On parle alors de tenant pour désigner la collection de ressources qui sont rattachées à un utilisateur.

  • Tiering : tous vos utilisateurs n’auront probablement pas tous accès aux mêmes fonctionnalités s’ils sont en période d’essai ou en fonction de leur niveau de souscription
  • Facturation : vous allez avoir besoin de pouvoir affecter chaque coût à un tenant. Pour cela, vous devoir mettre en place les mécanismes vous permettant de relier chaque ressource, chaque opération et chaque requête à un tenant en particulier.
  • Partitionnement et isolation : partitionner les données

Tiering mis en pratique

Vous l’avez sans doute déjà constaté, la plupart des services SaaS vous offre différents niveaux de souscription pour chacun d’entre eux une liste plus ou moins fournis de fonctionnalités. Comment cela se traduit au niveau de votre service ? Voici quelques exemples :

  • Routage des requêtes : vous pouvez choisir de router les requêtes de vos utilisateurs vers des backends différents en fonction de la souscription pour des raisons de performances par exemple.
  • Throttling : à l’inverse du point précédent, vous pouvez opter pour un point de terminaison unique, mais une limitation du nombre de requêtes par période de temps en fonction de l’abonnement.
  • Feature flags : c’est la mécanique qui va vous permettre d’activer et désactiver les fonctionnalités par tenant.

Conseils de productivité

Afin de faciliter le développement des différents services qui composent votre offre SaaS, il est recommandé de faciliter la réutilisation de modules en les packageants.

Merci pour votre lecture. Si cet article vous a plu, merci de le partager sur vos réseaux 😉

Timothée Taron - Sept, 2022

image