Mamy wielu klientów, których systemy mają pewną funkcjonalność, ale mają też dość dużą różnorodność. Rośnie liczba klientów - zawsze zdrowa rzecz! - a różnorodność między ich firmami również rośnie.
Obecnie istnieje jedna witryna sieci Web ASP.Net (formularze WWW) (w przeciwieństwie do projektu internetowego), która zawiera podfoldery dla każdego najemcy, wraz z niestandardowymi stronami tego najemcy. Istnieje osobny projekt modelowy, który zajmuje się dostępem do bazy danych i logiką biznesową.
Co jest lepsze - a co najważniejsze - dlaczego - między posiadaniem (a) 1 bazy danych na klienta, z tylko funkcjami powiązanymi z tym klientem; lub (b) pojedyncza baza danych współdzielona przez wszystkich klientów, przy czym tylko jeden zestaw tabel jest używany przez jednego klienta.
Główne obawy w branży dotyczą:
- utrzymanie wielu zasobów - kopii zapasowych, kontrola wersji i tym podobne
- promowanie ponownego wykorzystania w jak największym stopniu
W jaki sposób zapewniłbyś rozwiązanie tych problemów, które rozwiązanie jest lepsze i dlaczego? (Kompilowałem również odpowiedzi na podobne pytania)