Fähigkeit

Fastest+ Routing

Balancieren Sie nicht nach einer einzigen Metrik, sondern nach einer zweistufigen Echtzeitentscheidung.

TR7 Fastest+ Routing geht über die klassische Auswahl "least connections" oder "fastest response" hinaus und bewertet für jede Anfrage zwei separate Service-Signale gemeinsam. Zunächst werden die am besten geeigneten Backends nach dem primären Kriterium eingegrenzt, anschließend werden die im Gleichstand verbleibenden Kandidaten mit dem sekundären Signal ausdifferenziert. Der Operator kann die Entscheidungsstrategie auswählen, ohne sich mit technischen Zählernamen zu befassen: durchschnittliche Antwortzeit, Verbindungsaufbauzeit, Wartezeit in der Warteschlange, momentane Session-Last, momentane Warteschlangenauslastung, Verbindungsfehler, clientseitige Fehlerdichte, serverseitige Fehlerdichte, servicebedingte Abbrüche oder genutzte Verbindungskapazität. Im Standardgebrauch bevorzugt Fastest+ unter den Kandidaten mit niedriger Antwortzeit den Service mit der niedrigeren momentanen Session-Last. Services, die sich im Wartungsmodus befinden, deren Gesundheitsstatus ungeeignet ist oder die im Rahmen der Session-Affinität bereits bestimmt wurden, werden aus dem Entscheidungsprozess herausgehalten. So berücksichtigt die Routing-Logik sowohl die Performance-Signale als auch den realen Service-Zustand. Das Ergebnis: Anstelle einer festen Algorithmusauswahl bietet TR7 eine vom Operator definierte, mehrkriterielle, live und ohne Code zu schreiben verwaltbare Verkehrsverteilung.

10
Auswählbare Live-Service-Signale
2
Entscheidungsstufen (primär + sekundär)
0
Session-Verlust während des Soft-Reloads

Warum wählt Load Balancing mit einer einzigen Metrik bei hohem Verkehr den falschen Service?

Bei traditionellen Load-Balancing-Ansätzen wird die Algorithmusauswahl meist auf eine einvariable Liste reduziert: der Reihe nach verteilen, an die wenigsten Verbindungen senden, nach Quelladresse fixieren oder Gewichte verwenden. Dieses Modell mag unter normalem Verkehr ausreichend erscheinen; sobald jedoch eine Kampagne, ein API-Burst, Streaming-Verkehr oder eine plötzliche Benutzerlast einsetzt, bleibt es als alleinige Entscheidungsgrundlage schwach.

Geben beispielsweise zwei Backends dieselbe Antwortzeit, verteilt sich der Verkehr willkürlich, wenn das System keine Möglichkeit für einen zweiten Vergleich hat. Es kann ein Service ausgewählt werden, der zwar eine niedrige Antwortzeit aufweist, aber eine volle Warteschlange hat; ein Service, der wenige Verbindungen zu haben scheint, aber bereits Fehler erzeugt, kann weiterhin Kandidat bleiben.

Diese Unentschlossenheit wirkt sich besonders auf die Extremwerte der Latenz aus. Während die durchschnittliche Antwortzeit akzeptabel erscheint, kann sich die Benutzererfahrung in den hohen Perzentilen verschlechtern. Wenn auch die durch Sicherheit, Zugriffskontrolle oder Anwendungsschicht-Kontrollen hinzugefügte Latenz nicht einberechnet wird, können Kandidaten in den Vordergrund treten, die schnell erscheinen, sich aber tatsächlich langsam verhalten.

Das richtige Modell muss zum Entscheidungszeitpunkt Live-Service-Signale lesen und ungesunde oder im Wartungsmodus befindliche Kandidaten automatisch eliminieren. Ist die Session-Affinität aktiv, darf es die bestehende Benutzerbindung nicht stören; nur bei freien Anfragen sollte es den am besten geeigneten Service auswählen.

Genau das ist das Kernproblem, das Fastest+ Routing löst: die Load-Balancing-Entscheidung nicht an ein einzelnes Label, sondern an das Echtzeit- und zweistufige Service-Verhalten zu binden.

Unser Ansatz

TR7 behandelt Fastest+ Routing mit Live-Signal-Lesen, zweistufiger Bewertung, Gesundheitsbewusstsein und oberflächenbasierter Konfiguration.

Für jede Anfrage wird mit Live-Service-Daten entschieden

Die Entscheidungslogik läuft in die Datenebene eingebettet und liest bei jeder HTTP- oder TCP-Anfrage Live-Service-Statistiken. Der ausgewählte Service wird in die Routing-Variable geschrieben und der Verkehr gemäß dieser Entscheidung weitergeleitet. Der Operator erhält eine dynamische Auswahl pro Anfrage, ohne speziellen Code zu schreiben.

Das zweite Signal trennt die im Gleichstand verbleibenden Kandidaten

In der ersten Stufe werden die Services mit dem besten Wert im primären Signal in die Kandidatenliste aufgenommen. Teilen sich mehrere Services denselben Score, kommt in der zweiten Stufe das sekundäre Signal zum Einsatz. So werden praktische Entscheidungen wie "bei gleicher Antwortzeit den mit der leereren Warteschlange wählen" innerhalb eines einzigen Algorithmus umgesetzt.

Gesundheitsstatus und Session-Bindung werden gemeinsam geschützt

Services im Wartungsmodus oder mit ungeeignetem Gesundheitsstatus werden nicht in die Kandidatenliste aufgenommen. Ist die dynamische Session-Affinität aktiv, wird die Fastest+-Auswahl übersprungen und die bestehende Session-Bindung beibehalten. Dieser Ansatz stört bei der Performance-Optimierung keine Benutzersessions.

Entscheidungssignale werden über die Oberfläche ausgewählt, kein Code erforderlich

Der Operator wählt nur das primäre und das sekundäre Entscheidungssignal. Das System erzeugt die erforderlichen Routing-Zeilen in der Konfigurationserzeugungsphase automatisch. Komplexe Entscheidungslogik wird für den täglichen Betrieb zu einer einfachen Richtlinienauswahl.

Fähigkeiten

Fastest+ Routing bietet fortgeschrittene Routing-Fähigkeiten, die Live-Performance, Gesundheit und Session-Bindung zwischen Backends gemeinsam bewerten.

Mit zweistufiger Minimumauswahl werden gleiche Scores kontrolliert ausdifferenziert

Wird im primären Entscheidungssignal ein neuer bester Wert gefunden, wird die Kandidatenliste zurückgesetzt; Services, die denselben Wert teilen, werden der Liste hinzugefügt. In der zweiten Stufe werden diese Kandidaten erneut nach dem sekundären Signal eingegrenzt. In der Standardkonfiguration bevorzugt Fastest+ unter den Kandidaten mit niedriger Antwortzeit den Service mit der niedrigeren momentanen Session-Last. Dadurch wird unter den schnell erscheinenden Services derjenige mit der niedrigeren Last bevorzugt.

Die Verkehrsentscheidung wird nicht mit technischen Zählern, sondern mit verständlichen Service-Signalen getroffen

Der Operator wählt für Fastest+ zwei Entscheidungssignale: durchschnittliche Antwortzeit, Verbindungsaufbauzeit, Wartezeit in der Warteschlange, momentane Session-Last, momentane Warteschlangenauslastung, Verbindungsfehler, clientseitige Fehlerdichte, serverseitige Fehlerdichte, servicebedingte Abbrüche oder genutzte Verbindungskapazität. Diese Signale werden systemintern mit den entsprechenden Live-Service-Zählern verknüpft; der Benutzer befasst sich nicht mit rohen Metriknamen. So kann der Verkehr nicht nur an den "schnell erscheinenden" Service geleitet werden, sondern an das Backend, das in diesem Moment gesünder, leerer oder weniger fehleranfällig ist.

Der Einzelsignal-Modus bietet bei Bedarf ein schlichteres Routing

In Service-Pools, in denen kein zweiter Vergleich nötig ist, kann der Einzelsignal-Modus verwendet werden. In diesem Modus wird die Entscheidung nur nach dem besten Wert des ausgewählten primären Signals getroffen. Für einfachere Service-Gruppen wird keine unnötige Entscheidungstiefe hinzugefügt. Der Operator kann sowohl den Einzelsignal- als auch den Zweisignal-Modus über dieselbe Oberfläche verwalten.

Wartung und Gesundheitsstatus werden im Entscheidungsprozess automatisch gefiltert

Befindet sich ein Backend im Wartungsmodus oder ist sein Gesundheitsstatus ungeeignet, gelangt es nicht in die Kandidatenliste. Dieses Verhalten ist in den Algorithmus eingebettet; es erfordert keine zusätzliche manuelle Regel, keine zusätzliche Zugriffskontrollliste und keinen operativen Eingriff. Geplante Wartung, Ausgliederung problematischer Services und vorübergehende Service-Entfernung wirken sich automatisch auf die Verkehrsentscheidung aus. So wählt das System nur unter geeigneten Kandidaten aus.

Bei aktiver Session-Affinität stört Fastest+ die bestehende Bindung nicht

Wenn die Bedingungen der Session-Affinität erfüllt sind, wird die Fastest+-Auswahl deaktiviert. Die Anfrage wird an den Service geleitet, der durch die bestehende Sticky-Session-Logik bestimmt wurde. Die erzeugte Routing-Bedingung wird vom System transparent konfiguriert. Dadurch verdrängt die Performance-Optimierung nicht die Kontinuität der Benutzersession.

Dasselbe Entscheidungsmodell kann auf HTTP- und TCP-Services angewendet werden

Fastest+ kann sowohl in der HTTP-Anfragephase als auch in der TCP-Content-Inspection-Phase laufen. Bei TCP-Services wird das für die Entscheidung erforderliche Inspektionsfenster automatisch erzeugt. So werden Anwendungsschicht-Verkehr und TCP-basierte Services in demselben Verwaltungsmodell behandelt. Der Operator muss nicht je nach Service-Typ unterschiedliche Produktlogiken erlernen.

Clients ohne Sticky-Session gehen dynamisch an den am besten geeigneten Service

Wird die dynamische Affinität verwendet, läuft Fastest+ nur für Clients, die noch keine fixierte Session haben. Während bestehende Sessions beibehalten werden, werden neue oder freie Anfragen nach Live-Signalen verteilt. Dieses Modell bietet einen ausgewogenen Ansatz für sowohl Benutzerkontinuität als auch momentane Kapazitätsnutzung. Besonders unter hohem und schwankendem Verkehr trägt es zu einer effizienteren Nutzung des Service-Pools bei.

Wird kein gesunder Kandidat gefunden, fällt der Verkehr nicht in ein schwarzes Loch

Wird im Entscheidungsprozess kein geeignetes Backend gefunden, bleibt die spezielle Routing-Entscheidung leer. In diesem Fall greift das Standard-Load-Balancing-Verhalten. In Situationen, in denen das System keine spezielle Routing-Entscheidung erzeugen kann, kehrt es zum bekannten Standardverhalten zurück, statt den Verkehr ins Leere fallen zu lassen. Diese Rückfalllogik reduziert operative Risiken.

Operative Tiefe

Fastest+ Routing ist nicht nur eine Algorithmusauswahl; es ist zusammen mit Hochverfügbarkeit, Sichtbarkeit, Reload- und Integrationsverhalten konzipiert.

01

Action-Registrierungsmodell

Die Entscheidungslogik wird beim Service-Start geladen und als zwei separate Actions definiert: Einzelsignal und Zweisignal. Die Einzelsignal-Action arbeitet mit einem Entscheidungs-Input, die Zweisignal-Action mit zwei Entscheidungs-Inputs. Die Actions können in den HTTP- und TCP-Anfragephasen verwendet werden.

02

Niedrige Entscheidungskosten

Service-Statistiken werden aus einer In-Memory-Tabelle gelesen; es ist kein zusätzlicher Socket, kein Dateilesevorgang und keine externe Abfrage erforderlich. Der Entscheidungsprozess führt einen linearen Scan nach Anzahl der Services durch. Diese Struktur hält die Routing-Entscheidung selbst in Pools mit zahlreichen Backends nahe an der Datenebene.

03

Cluster-Failover-Verhalten

In einer Hochverfügbarkeitsinstallation mit zwei Nodes führt jeder Node denselben Algorithmus unabhängig aus. Da Live-Signale Node-lokal ausgewertet werden, trifft der neue aktive Node nach einem Failover weiterhin Entscheidungen mit den von ihm selbst beobachteten Statistiken. Es entsteht keine Abhängigkeit von einem externen gemeinsamen Score-Speicher.

04

Audit und Sichtbarkeit

Das ausgewählte Backend wird in der Routing-Variable gehalten und kann dem Logformat hinzugefügt werden. Dadurch kann rückblickend untersucht werden, welche Anfrage an welchen Service geleitet wurde. Operationsteams können Verkehrsentscheidungen nicht nur als Ergebnis, sondern als nachverfolgbaren Routing-Trail sehen.

05

Reload-Verhalten

Während eines Soft-Reloads wird der Entscheidungskontext neu geladen und der Algorithmus startet mit einem neuen Speicherzustand. Da keine historische Antwortzeit-Beobachtung übertragen wird, basieren die Entscheidungen bei den ersten Anfragen auf den aktuellen momentanen Daten. Dass Konfigurationsänderungen ohne Neustart des Pools angewendet werden können, reduziert operative Unterbrechungen.

06

WAAP- und Layer-4-Grenzen

Blockiert die WAAP-Schicht eine Anfrage, wird Fastest+ nicht aufgerufen; so wird keine unnötige Service-Auswahl getroffen. Fastest+ gilt nur in HTTP- und TCP-Service-Pools. In Layer-4-Services werden die Layer-4-Algorithmusoptionen der Plattform verwendet.

In welchen Szenarien es verwendet wird

E-Commerce-Verkehrsverteilung zu Kampagnenzeiten

In intensiven Verkaufsphasen erhalten zahlreiche Backends gleichzeitig Verkehr. Fastest+ bewertet Signale wie Antwortzeit und Warteschlangenauslastung gemeinsam und verhindert, dass schnelle, aber mit voller Warteschlange ausgestattete Services unnötig in den Vordergrund treten. Das Ergebnis ist eine ausgewogenere Service-Nutzung und eine kontrolliertere Benutzererfahrung.

Fehlerbewusstes Routing für finanzielle API-Services

In finanziellen API-Schichten reicht eine schnelle Antwort allein nicht aus; auch das Fehlererzeugungsverhalten muss Teil der Entscheidung sein. Fastest+ kann Services mit niedriger serverseitiger Fehlerdichte in den Vordergrund stellen und bei Gleichstand die momentane Session-Last berücksichtigen. Diese Struktur ermöglicht eine bewusstere Verteilung bei kritischem API-Verkehr.

Last- und Geschwindigkeitsauswahl an Media-Edge-Nodes

Bei Streaming- und Media-Verkehr liefert der am wenigsten belastete Node nicht immer die beste Benutzererfahrung. Fastest+ bewertet mit der Kombination aus genutzter Verbindungskapazität und Antwortzeit sowohl die aktuelle Verbindungsnutzung als auch das Antwortverhalten gemeinsam. So wird eine präzisere Verkehrsverteilung zwischen Edge-Services erreicht.

Intelligente Differenzierung in Multi-Tenant-SaaS-Service-Gruppen

In Multi-Tenant-Strukturen kann jede zu einem Tenant gehörende Service-Gruppe ein unterschiedliches Verhalten zeigen. Fastest+ kann mit Signalen wie servicebedingten Abbrüchen und Verbindungsaufbauzeit die stabiler arbeitenden Services bevorzugen. Dieser Ansatz macht die tenant-basierte Servicequalität besser verwaltbar.

Häufig gestellte Fragen

Welche Signale können als primäre und sekundäre Entscheidung ausgewählt werden?
Aus zehn verschiedenen Live-Service-Signalen können zwei ausgewählt werden: durchschnittliche Antwortzeit, Verbindungsaufbauzeit, Wartezeit in der Warteschlange, momentane Session-Last, momentane Warteschlangenauslastung, Verbindungsfehler, clientseitige Fehlerdichte, serverseitige Fehlerdichte, servicebedingte Abbrüche und genutzte Verbindungskapazität. Das primäre Signal dient der Kandidateneingrenzung, das sekundäre Signal der Ausdifferenzierung unter den im Gleichstand Verbliebenen.
Kann ich Fastest+ in diesem Modus verwenden, wenn ein einzelnes Signal ausreicht?
Ja. Wenn für den Service-Pool kein zweiter Vergleich nötig ist, wird der Einzelsignal-Modus bevorzugt; die Entscheidung wird nur nach dem besten Wert des primären Signals getroffen. Über dieselbe Oberfläche kann zwischen Einzelsignal- und Zweisignal-Modus gewechselt werden; die Anwendungslogik bleibt in beiden Fällen gleich.
Wie wird ein Service im Wartungsmodus von Fastest+ behandelt?
Backends im Wartungsmodus oder mit ungeeignetem Gesundheitsstatus werden nicht automatisch in die Kandidatenliste aufgenommen. Diese Filterung ist das natürliche Verhalten des Algorithmus; es ist keine zusätzliche Zugriffskontrollliste und keine manuelle Regel erforderlich. Kehrt der Service wieder in Betrieb zurück, gelangt er bei der nächsten Entscheidung zurück in die Kandidatenliste.
Greift Fastest+, wenn die Session-Affinität aktiv ist?
Für bestehende Sticky-Sessions wird die Fastest+-Entscheidung übersprungen und die Anfrage an das Backend geleitet, mit dem die Session verbunden ist. Ist die dynamische Affinität aktiv, läuft Fastest+ nur für Clients, die noch nicht fixiert sind. Dieser Ansatz wahrt gemeinsam die Performance-Optimierung und die Kontinuität der Benutzersession.
Läuft auf HTTP- und TCP-Services derselbe Algorithmus?
Ja. Fastest+ wurde so konzipiert, dass es sowohl in der HTTP-Anfragephase als auch in der TCP-Content-Inspection-Phase läuft. Bei TCP-Services wird das für die Entscheidung erforderliche Inspektionsfenster automatisch erzeugt. Der Operator muss nicht je nach Service-Typ unterschiedliche Verwaltungsmodelle erlernen.
Wie wird die Entscheidungsqualität nach einem Soft-Reload beeinflusst?
Während des Reloads wird der Entscheidungskontext neu gestartet; historische Antwortzeit-Beobachtungen werden nicht übertragen. Die ersten Anfragen werden nach dem aktuellen momentanen Service-Zustand bewertet, kurz darauf kehren die Live-Signale zu ihrem normalen Verlauf zurück. Dass Konfigurationsänderungen ohne Neustart des Service-Pools angewendet werden können, reduziert operative Unterbrechungen.

Befreien Sie Ihre Load-Balancing-Entscheidung von einer einzigen Metrik

Zweistufige, mit Live-Signalen und ohne Code zu schreiben konfigurierte Verkehrsverteilung. Lassen Sie uns das in einer Live-Einrichtung auf Ihren eigenen Services durchgehen.