Was sind die besten Praktiken Multi-Tenancy Anwendungen in den Gebäuden?
-
23-08-2019 - |
Frage
Was sind die besten Praktiken in Bauanwendungen, die mehrere Mieter wie Software as a Service unterstützen?
Links zu White Paper, die zu diesem Thema erweitern werden sehr geschätzt.
Lösung
Sie könnten einige wertvolle Ratschläge in einer Reihe von Blog-Beiträge von Oren Eini finden.
Dies ist eine der letzten Stellen in der Serie, mit Links zu früheren Veröffentlichungen: http://ayende.com/Blog/archive/2008/08/16/Multi-Tenancy--Approaches-and-Applicability.aspx
Andere Tipps
Für die Datenbank:
A. Setzen Sie alles auf der gleichen Datenbank, lege eine tenant_id Spalte auf Ihre Tabellen
Pros: Einfach zu tun
Nachteile: Sehr anfällig für Fehler: es ist einfach, Daten von einem Mieter zu einem anderen zu lecken.
B. Setzen Sie alles auf der gleichen Datenbank, sondern stellen für jeden Gast in seinen eigenen Namensraum (postgresql nennt sie Schemata)
Vorteile: Bieten eine besseren Datenauslaufschutz als Option A
Nachteile: Wird nicht von allen Datenbanken unterstützt. AFAIK PostgreSQL und Oracle unterstützt.
C. Setup eine Datenbank pro Mieter
Pros: Absolut keine Chance von Daten von einem Mieter zu einem anderen undichten
Nachteile: neue Mieter Einrichtung ist komplizierter. Datenbank-Verbindungen sind teuer.
Ich habe gelernt, nur die oben genannten Ideen von Guy Naor. Hier ist ein Link zu seiner Präsentation: http : //aac2009.confreaks.com/06-feb-2009-14-30-writing-multi-tenant-applications-in-rails-guy-naor.html