Dostępne są dwa sposoby dostosowania aplikacji dla wielu dzierżawców. 1. Zmiany w poziomie prezentacji 2. Zmiana systemu.
Poniżej przedstawiono typowe opcje dostosowywania preferowane w aplikacjach internetowych w środowisku multi-tenant są
1) interfejsu użytkownika i branding,
2) przepływu pracy i biznesowych reguł,
3) model danych rozszerzenia i
4) kontrola dostępu
W której 1 należy do zmiany warstwy prezentacji, a reszta to zmiana poziomu systemu w aplikacji dla wielu dzierżawców.
MVC jest uważany za opcję dostosowania warstwy prezentacji, w której mamy opcję zezwalania najemcy na posiadanie własnego motywu, logo i układu niestandardowego lub niestandardowych kontrolerów i niestandardowych sekcji strony.
Dla ustawienia systemowe, istnieje wiele sposobów, aby to osiągnąć, jednak następujące są najbardziej rozpowszechniony
- Dopasowanie na poziomie bazy danych
- dostosowywania na poziomie middleware.
W aplikacji SaaS dostępne są funkcje i implementacja. W przypadku późniejszej konfiguracji, najemca określi, która implementacja zostanie wywołana dla rozważanego najemcy w oparciu o jego konfigurację, a następnie świadczy usługę. Osiąga się to za pomocą niestandardowego mechanizmu wprowadzania zależności, który jest świadomy dzierżawy, a także będzie wymagał specjalnej konfiguracji dzierżawcy, która może zostać wykorzystana w czasie wykonywania w celu ułatwienia tego procesu.
W przypadku (1) dane w bazie danych należy izolować na podstawie identyfikatora dzierżawcy, aby konfiguracja lub metadane nie były współdzielone między lokatorami w środowisku dla wielu dzierżawców.
zatem główne komponenty będą
- identyfikator lokator otrzymano z kontekstu najemcy
- wielu lokator DataStorage
- uwierzytelniania specyficzne najemcy [podpisanie formularza/Single SIGNON itp ..]
IMHO, ponieważ Twój temat jest szeroki, jeśli możesz przedstawić nam bardziej szczegółowe obszary, omówimy ich implementację.
Mam nadzieję, że to odpowiada na twoje pytanie, proszę zamieścić swoją aktualizację.
Dzięki, Twoja odpowiedź jest bardzo pomocna. Czy masz doświadczenie w implementacji w .net? – Alexandr
@Alexandr: Dziękuję Alexandr. Posiadam doświadczenie w zakresie wdrażania, ale nie w oparciu o dzierżawcę na bazie DI. Natknąłem się na niektóre wdrożenia i blogi na ten temat. Opublikuj wszelkie inne zapytania z Twojego końca związane z tym wpisem. – Saravanan