Eigenständiger BegriffMechanikKapitel II · Kommunikation · Baustein 18 von 23

Service Discovery

Service Discovery löst einen stabilen Dienstnamen zur Laufzeit in eine Menge erreichbarer Endpunkte auf.

  1. DienstnameBleibt stabil, während Instanzen wechseln.
  2. EndpunktmengeEnthält aktuell bekannte Kandidaten samt Gesundheitsstatus.
  3. Stale-FensterBegrenzt die Wahl bereits ausgefallener Ziele.

Einordnung

Warum das wichtig ist

Discovery meldet bekannte Endpunkte; tatsächliche Erreichbarkeit und erfolgreiche Fachantwort bleiben Aufgaben von Client, Load Balancer und Anwendung.

Die verteilte Ausbaustufe im Shop-Szenario ist hypothetisch; der aktuelle Shop bleibt ein modularer Monolith mit sieben Modulen und gemeinsamer Datenbank.

Shop-Beispiel · Zuordnung

Service Discovery: Entscheidungsgrenzen

Der aktuelle Shop hat sieben Module in einem Prozess. Hypothetisch läuft Versand auf drei wechselnden Instanzen hinter dem logischen Namen versand. Die Plattform veröffentlicht Endpointänderungen und entfernt eine fehlerhafte Instanz nach der Gesundheitsregel. Das Team beendet eine Instanz während laufender Anfragen und misst Zeit bis zur Entfernung, Fehlversuche aus Caches und Verhalten bei Ausfall des Discovery-Dienstes. Erst eine begrenzte Stale-Phase und erfolgreiche Neuauflösung tragen die Zusage.

So liest du das Bild

  1. Dienstname Logische Adresse
  2. Endpunktmenge Versionierte Aktualisierung
  3. Stale-Fenster TTL plus Deregistrierung
Service Discovery: Entscheidungsgrenzen
VergleichAspektTragfähiger EinsatzGrenze
DNS-basiertBreit unterstützt und einfachTTL begrenzt AktualitätClientcache kann alte Ziele halten
Registry/APISchnelle EndpunktupdatesWatch oder AbfrageRegistryausfall braucht Cachepfad
Plattform-ServiceDiscovery plus Load BalancingPlattform verwaltet EndpunktePlattformsemantik bestimmt Health und Routing
Die Matrix verbindet Nutzen, Verantwortung und Grenze.

Nutzen & Grenzen

Hilft, wenn

  • TTL begrenzt Aktualität
  • Watch oder Abfrage
  • Plattform verwaltet Endpunkte

Grenzen

  • Clientcache kann alte Ziele halten
  • Registryausfall braucht Cachepfad
  • Plattformsemantik bestimmt Health und Routing

In der Praxis

  1. Starte und beende Versandinstanzen während laufender Bestellabfragen. Prüfe, wie schnell Discovery den aktuellen Endpunktbestand veröffentlicht.
  2. Lass einen registrierten Endpunkt nicht mehr antworten. Verifiziere, dass Gesundheitsprüfung oder Clientstrategie ihn nicht dauerhaft als gesund auswählt.
  3. Bewerte DNS-basierte gegen API-basierte Discovery anhand Cachezeit, Ausfallsignal und Plattformabhängigkeit. Halte die gewählte Aktualitätszusage messbar fest.
Ausführliche Erklärung lesen

Instanzen registrieren sich oder werden von der Plattform beobachtet. DNS, Registry oder Endpoint-API liefert Kandidaten, aus denen Client oder Proxy ein Ziel wählt.

TTL, Health-Check-Intervall und Deregistrierungszeit bestimmen, wie lange ein ausgefallenes Ziel noch gewählt werden kann. Caches brauchen eine definierte Reaktion, wenn die Discovery selbst ausfällt.

Load Balancing wählt aus den gefundenen Zielen. Service Mesh kann Discovery konsumieren und die Weiterleitung übernehmen.

Selbst prüfen

Teste dich in drei Stufen

  1. AblesenIm Bild nachsehen

    Was ist die Kernaufgabe von Service Discovery?

    Lösung mit Begründung ansehen

    Service Discovery löst einen stabilen Dienstnamen zur Laufzeit in eine Menge erreichbarer Endpunkte auf.

  2. AnwendenAuf eine neue Lage übertragen

    Welche Annahme ist im Shop hypothetisch?

    Lösung mit Begründung ansehen

    Hypothetisch läuft Versand auf drei wechselnden Instanzen hinter dem logischen Namen versand. Die Plattform veröffentlicht Endpointänderungen und entfernt eine fehlerhafte Instanz nach der Gesundheitsregel.

  3. BewertenEine Alternative abwägen

    Welche drei Punkte müssen vor einer Einführung belegt sein?

    Lösung mit Begründung ansehen

    Dienstname, Endpunktmenge, Stale-Fenster.