Skip to Content
CubySub-Cuby Federation

Sub-Cuby Federation

Mehrere Cuby-Instanzen können zusammenarbeiten, indem sie ProcessCube®-Instanzen untereinander teilen. Dies ermöglicht verteilte Setups, in denen ein übergeordneter Cuby auf die Engines und LowCodes entfernter Cubies zugreifen kann.

Übersicht

Funktionsweise

  1. Ein Plugin ruft cuby.registerCuby(url, apiKey) auf
  2. Cuby ruft GET /api/processcubes des entfernten Cuby ab
  3. Jede entdeckte ProcessCube®-Instanz wird als subcuby:{url}:{productId} in der ProcessCube Registry registriert
  4. Eine Socket.IO-Verbindung wird für Live-Updates aufgebaut
  5. Neue oder entfernte ProcessCubes werden automatisch synchronisiert

Live-Synchronisation

Die Verbindung zu Sub-Cubies wird über Socket.IO aufrechterhalten:

EventRichtungBeschreibung
processcube:registeredSub-Cuby → ParentNeue ProcessCube®-Instanz verfügbar
processcube:unregisteredSub-Cuby → ParentProcessCube®-Instanz entfernt

Cleanup

Beim Shutdown ruft Cuby disconnectAllSubCubys() auf, um alle Verbindungen sauber zu trennen.

Anwendungsfälle

Zentrales Management

Ein Cuby als zentrales Gateway zu mehreren Umgebungen (Produktion, Staging, Entwicklung). Alle ProcessCube®-Instanzen sind über eine Oberfläche erreichbar.

Verteilte Deployments

BPMN-Prozesse über cuby.deployProcesses() an Engines in verschiedenen Sub-Cubies deployen. Ein Deployment-Plugin kann so Prozesse gleichzeitig in mehrere Umgebungen ausrollen.

Konfigurations-Sync

Plugin-Konfigurationen über mehrere LowCode-Instanzen verteilen. Änderungen werden über die Socket.IO-Verbindung automatisch synchronisiert.

Registrierung über Plugin

Die Sub-Cuby-Registrierung erfolgt über die Cuby Context API:

export async function deploy(productDir, config, onProgress, cuby, context) { // Sub-Cuby registrieren await cuby.registerCuby('https://staging.example.com:3847', config.apiKey); // Alle ProcessCubes (lokal + remote) abrufen const allProcessCubes = await cuby.getProcessCubes(); console.log('Verfügbare Instanzen:', allProcessCubes); }

Weiterführend