Quels sont les défis typiques qui se posent lors de la conversion d'une application à locataire unique en application à locataire multiple? La sécurité et l'isolement des données me semblent les plus importants. Quels sont les autres?
Je suis l'un des architectes d'un effort d'automatisation assez important, et historiquement, c'est notre entreprise qui l'utilise. Nous voulons permettre à d'autres de l'utiliser également. Chaque fois que nous parlons de "le rendre multi-locataire", la conversation tourne autour de garder les utilisateurs avec un locataire éloignés des données qu'un autre locataire possède, et de s'assurer que les utilisateurs avec un locataire ne peuvent pas (intentionnellement ou par inadvertance) créer des impacts dans un autre environnements du locataire. Ce que je me demande, c'est si la sécurité / l'isolement des données sont vraiment les seules préoccupations majeures ici, ou s'il existe d'autres préoccupations majeures auxquelles nous ne pensons tout simplement pas.
la source
Réponses:
Outre le cloisonnement des données, vous pouvez rencontrer des problèmes avec
Certains supposent que vous exécutez tous les locataires dans le même espace d'adressage (machine ou cluster). Si chaque locataire exécute votre logiciel sur son matériel, vous pouvez évoquer une partie de ce qui précède et ajouter:
la source
À mon avis, le plus gros problème de la multi-location est la personnalisation. Cela se produit régulièrement si vous vendez une application métier à des entreprises. Cela peut varier de quelque chose d'aussi simple que chaque client désirant ses propres skins à la possibilité de configurer des champs, des règles, des formulaires et des rapports supplémentaires. Le niveau de personnalisation que vous devez prendre en charge joue un rôle essentiel dans l'architecture.
la source
La réponse de Mike est très bonne, et beaucoup de points là-bas sous-estiment presque leur complexité en raison de leur brièveté, alors prenez-les à cœur.
Un point que j'ajouterais est que vous devriez avoir de bons outils de gestion pour créer (et plus tard, gérer) de nouveaux locataires. Selon l'architecture physique avec laquelle vous optez, cela peut être loin d'être anodin et c'est quelque chose qui est souvent négligé. Les avantages d'un logiciel en tant que produit de service n'entrent vraiment en jeu que lorsqu'il y a un grand nombre de locataires, donc un effort considérable devrait être consacré à la restauration.
Pour prolonger la réponse de Sriram; la personnalisation par locataire est à peu près interdite, tout ce qu'un locataire pourrait vouloir changer devrait être configurable . Par exemple, si votre solution ne prend pas en charge l'ajout dynamique de champs de données dans au moins quelques domaines clés, vous serez probablement inondé de demandes de personnalisation. Il est l' un des rares cas où un peu d' avance de complexité supplémentaire ne paie en fait de (disons qu'il va à l' encontre YAGNI, ou tout au moins, ce niveau de configuration est presque une exigence clé, de sorte que vous êtes en avoir besoin).
la source