NYSSR.NET / RESOURCES

Standorte verbinden, ohne alles zu zentralisieren

Wie ein selbst betriebenes nyssr.net-Knotennetzwerk Dienste über Büros, private Netzwerke und Cloud-Standorte verbindet und die Arbeit nahe an den lokalen Daten hält.

Wenn Anwendungen über Büros, private Netzwerke oder Cloud-Standorte hinweg arbeiten müssen, erzeugt eine Zentralisierung aller Dienste unnötige Abhängigkeiten. nyssr.net erlaubt es, Dienste nahe an den Systemen und Daten zu betreiben, die sie unterstützen.

Ein nyssr.net-Netz kann Büros, Länder und Kontinente umspannen. Knoten können neben lokalen Datenbanken, Lager- und Maschinensystemen sowie anderen Diensten laufen — auch hinter Firewalls.

So lassen sich lokale Datenquellen anbinden, ohne alles in die Cloud zu verlagern.

Ein Mesh, das sich an seine Routen anpasst

Nachrichten laufen über offene TCP-Kanäle zwischen Knoten. Nach dem Start öffnet das Netz normalerweise keine neue Verbindung pro Nachricht. Nachrichten wandern von Knoten zu Knoten entlang einer passenden Route.

Jede Verbindung hat Kosten, die auf der Weiterleitungszeit basieren. Das Netz beobachtet den Verbindungszustand und passt sich an, wenn sich Routen ändern.

Ein Mesh bietet mehrere Vorteile:

  • Alternativrouten bleiben verfügbar, wenn eine Verbindung ausfällt
  • Direktverbindungen können die Zahl der Hops reduzieren
  • Zusätzliche Verbindungen können lokale Verkehrsspitzen aufnehmen
  • Engpässe lassen sich durch Topologieänderungen vermeiden

Kernidee: Der Standort ist Teil der Architektur: Platzieren Sie Dienste und Routen dort, wo sie das System schneller und widerstandsfähiger machen.

Zugehörige Dienste nahe beieinander halten

Dienste, die häufig zusammenarbeiten, können auf demselben oder benachbarten Knoten installiert werden. Dienste, die in mehreren Regionen gebraucht werden, lassen sich in diese Regionen verteilen, während zentrale Dienste in der Cloud bleiben können.

Lokale Proxy-Dienste sind nützlich für Datenquellen, die es nur an einem Standort gibt. Ein datenbanknaher Dienst kann genau die Daten aufbereiten, die ein anderer Dienst braucht, statt Datenbank-Entitäten oder SQL-Abfragen über das Netzwerk offenzulegen.

RemoteSkin ist ein Beispiel. Eine komplette UI-Darstellung inklusive der ersten Datenbankabfragen lässt sich mit rund 44 KBytes übertragen. Selektive Datenaufbereitung, offene Kanäle und Komprimierung verringern die Auswirkungen geografischer Distanz.

Caches reduzieren zentrale Abhängigkeiten

Ein lokaler Cache kann einen Singleton-Dienst dezentralisieren. Er antwortet lokal und kontaktiert den zentralen Dienst nur, wenn ihm Daten fehlen oder ungültig sind.

Weil nyssr.net-Dienste modular sind, lassen sich diese Cache-Dienste hinzufügen, ersetzen oder verteilen, ohne die Clients zu ändern, die sie nutzen.

Betriebliche Entscheidungen

  • Cloud: zentrale Dienste und gemeinsame Koordination
  • Zweigstellen: lokale Systeme hinter Firewalls
  • Nahe an den Daten: Aufbereitungs- und Proxy-Dienste
  • Nahe an den Nutzern: häufig genutzte Dienste
  • Über das Mesh: Redundanz und Alternativrouten

Platzierung: Rechnen Sie nahe an den Daten und verteilen Sie nur das Ergebnis, das andere Dienste brauchen.

Routing: Halten Sie häufig genutzte Pfade kurz und behalten Sie Alternativrouten.