Shared-Memory-Modus
App supervisorEnterprise Edition+Einführung
Wenn Benutzer eine Aufteilung des Geschäfts auf Anwendungsebene wünschen, aber keine komplexe Bereitstellungs- und Betriebsarchitektur einführen möchten, kann der Shared-Memory-Modus für mehrere Anwendungen verwendet werden.
In diesem Modus können mehrere Anwendungen gleichzeitig in einer NocoBase-Instanz ausgeführt werden. Jede Anwendung ist unabhängig, kann mit einer unabhängigen Datenbank verbunden werden, kann separat erstellt, gestartet und gestoppt werden, aber sie teilen sich denselben Prozess und Speicherplatz. Benutzer müssen weiterhin nur eine NocoBase-Instanz warten.
Benutzerhandbuch
Konfiguration der Umgebungsvariablen
Stellen Sie vor der Verwendung der Multi-Anwendungs-Funktion sicher, dass beim Start von NocoBase die folgenden Umgebungsvariablen festgelegt wurden:
Erstellung von Anwendungen
Klicken Sie im Systemeinstellungsmenü auf „App-Supervisor“, um die Anwendungsverwaltungsseite aufzurufen.

Klicken Sie auf die Schaltfläche „Neu hinzufügen“, um eine neue Anwendung zu erstellen.

Beschreibung der Konfigurationselemente
Starten der Anwendung
Klicken Sie auf die Schaltfläche Starten, um die Unteranwendung zu starten.
Wenn bei der Erstellung „Beim ersten Zugriff starten“ ausgewählt wurde, startet sie beim ersten Zugriff automatisch.

Zugriff auf die Anwendung
Klicken Sie auf die Schaltfläche Besuchen, um die Unteranwendung in einem neuen Tab zu öffnen.
Standardmäßig wird /apps/:appName/admin/ verwendet, um auf die Unteranwendung zuzugreifen, zum Beispiel:
Gleichzeitig kann auch eine unabhängige Domain für die Unteranwendung konfiguriert werden. Die Domain muss auf die aktuelle IP aufgelöst werden. Wenn Nginx verwendet wird, muss die Domain auch in der Nginx-Konfiguration hinzugefügt werden.
Stoppen der Anwendung
Klicken Sie auf die Schaltfläche Stoppen, um die Unteranwendung zu stoppen.

Anwendungsstatus
In der Liste können Sie den aktuellen Status jeder Anwendung einsehen.

Löschen der Anwendung
Klicken Sie auf die Schaltfläche Löschen, um die Anwendung zu entfernen.

Häufig gestellte Fragen
1. Plugin-Verwaltung
Die Plugins, die von anderen Anwendungen verwendet werden können, entsprechen denen der Hauptanwendung (einschließlich der Versionen), aber Plugins können unabhängig konfiguriert und verwendet werden.
2. Datenbank-Isolation
Andere Anwendungen können unabhängige Datenbanken konfigurieren. Wenn ein Datenaustausch zwischen Anwendungen gewünscht ist, kann dies über externe Datenquellen realisiert werden.
3. Datensicherung und Migration
Derzeit unterstützt die Datensicherung in der Hauptanwendung nicht die Einbeziehung von Daten anderer Anwendungen (sie enthält nur grundlegende Anwendungsinformationen). Sicherungen und Migrationen müssen manuell innerhalb der anderen Anwendungen durchgeführt werden.
4. Bereitstellung und Aktualisierung
Im Shared-Memory-Modus folgen die Versionen anderer Anwendungen automatisch dem Upgrade der Hauptanwendung, wodurch die Konsistenz der Anwendungsversionen automatisch gewährleistet wird.
5. Anwendungssitzung
- Wenn die Anwendung einen unabhängigen JWT-Schlüssel verwendet, ist die Anwendungssitzung von der Hauptanwendung und anderen Anwendungen unabhängig. Wenn über Unterpfade derselben Domain auf verschiedene Anwendungen zugegriffen wird, ist beim Wechsel zwischen verschiedenen Anwendungen eine erneute Anmeldung erforderlich, da das Anwendungs-TOKEN im LocalStorage zwischengespeichert wird. Es wird empfohlen, unabhängige Domains für verschiedene Anwendungen zu konfigurieren, um eine bessere Sitzungsisolation zu erreichen.
- Wenn die Anwendung keinen unabhängigen JWT-Schlüssel verwendet, teilt sie sich die Sitzung der Hauptanwendung. Nach dem Zugriff auf andere Anwendungen im selben Browser ist bei der Rückkehr zur Hauptanwendung keine erneute Anmeldung erforderlich. Es bestehen jedoch Sicherheitsrisiken: Wenn die Benutzer-IDs verschiedener Anwendungen identisch sind, kann dies dazu führen, dass Benutzer unbefugt auf Daten anderer Anwendungen zugreifen.

