Plan du site  
pixel
pixel

Articles - Étudiants SUPINFO

Qu'est-ce que l'architecture Multi-Tenant ?

Par Omar HARRAS Publié le 28/10/2015 à 23:50:18 Noter cet article:
(0 votes)
Avis favorable du comité de lecture

Multi-Tenant ou Multi-Entité est une architecture où une seule instance d'application va servir plusieurs clients. Chaque client est appelé locataire (tenant en Anglais). Elle s'oppose à une architecture Single-Tenant où chaque organisation cliente à sa propre instance d'installation logicielle ou matérielle. Les locataires (tenants) ont la possibilité de modifier une partie du logiciel comme par exemple la couleur de l’interface utilisateur ou modifier les règles métiers, mais ils ne sont pas autorisés à modifier le code source de l’application.

Avantages

La réduction des couts de la maintenance :

Une application multi-entité est un seul codebase installé sur un serveur unique relié par exemple à une seule instance d’un système bancaire (cache, base de données, log, etc.). Quand un utilisateur final signale une erreur, les développeurs n’ont pas besoin de déterminer ou est-ce que l’erreur est survenue, il suffit d’un unique fichier de log qui va pouvoir indiquer le bug, et quand c'est réglé il faut redéployer le fichier de log sur la seule et unique instance du système pour que tous les locataires (tenants) bénéficient du même réglage d’erreur.

L’amélioration de la Scalabilité :

Imaginons une situation où une application est destinée à servir deux clients, et chacun génère la valeur du chargement d’un serveur et demi. Si l’application est déployée séparément pour chaque client il va falloir deux serveurs pour chacun donc 4 serveurs en tout pour gérer le total des chargements. Alors qu’avec une architecture multi-entité une application pourra être installée sur 3 serveurs et donc chaque client va toujours continuer à charger la valeur d’un serveur et demi.

Inconvénients

La complexité :

La configuration et la gestion des données sont plus complexes comme par exemple appliquer une méthode pour sécuriser la fuite des données entre les tenants, c’est-à-dire empêcher un utilisateur d’une entité à accéder aux données d’une autre.

Le manque de la haute disponibilité :

En tournant sur un serveur unique qui est relié à une base de données unique, en cas de panne il y aura un impact sur toutes les entités ce qui fait que tous les tenants ne peuvent plus accéder aux ressources et il faudra attendre de corriger le problème survenu, donc la perte de temps est impotante.

Single-Tenant vs Multi-Tenant

Single-Tenant :

Une seule application destinée à servir plusieurs clients business et celle ci est installée sur une seule plage d’instance pour chaque client.

Multi-Tenant:

Une seule instance d'application va servir plusieurs clients. Chaque client est appelé locataire (tenant en Anglais). Elle s'oppose à une architecture Single-Tenant où chaque organisation cliente à sa propre instance d'installation logicielle ou matérielle.

Conclusion

Une application Multi-Tenant doit être mise en place soigneusement afin d’éviter des problèmes majeurs.

Il faut:

  • Absolument séparer la persistance des données de chaque tenant et de ses utilisateurs.

  • Séparer la configuration de chaque tenant.

  • Ne pas laisser les données transiter entre les tenants.

A propos de SUPINFO | Contacts & adresses | Enseigner à SUPINFO | Presse | Conditions d'utilisation & Copyright | Respect de la vie privée | Investir
Logo de la société Cisco, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société IBM, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sun-Oracle, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Apple, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sybase, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Novell, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Intel, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Accenture, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société SAP, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Prometric, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Toeic, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo du IT Academy Program par Microsoft, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management

SUPINFO International University
Ecole d'Informatique - IT School
École Supérieure d'Informatique de Paris, leader en France
La Grande Ecole de l'informatique, du numérique et du management
Fondée en 1965, reconnue par l'État. Titre Bac+5 certifié au niveau I.
SUPINFO International University is globally operated by EDUCINVEST Belgium - Avenue Louise, 534 - 1050 Brussels