Moderne Anwendungen haben keinen einzigen Origin-Server. Sie haben API-Server, statische Assets, Authentifizierungs-Services und Medien-Pipelines, die alle den Traffic korrekt weiterleiten müssen. Dafür war eine komplexe Konfiguration erforderlich: mehrere Domains, individuelles VCL, Compute-Code vor dem Origin-Server oder die Verwendung von Service-Chaining.
Request Routing kann das für Sie vereinfachen.
Eine Domain, mehrere Services
Mit Request Routing definieren Sie pfadbasierte Regeln für jede beliebige Domain in unserem Domain-Managementsystem, und wir senden jede Anfrage automatisch an den richtigen Service – ganz ohne individuellen Code.
Hosten Sie Ihre Marketingseiten auf einem statischen CDN, Ihre API in einem containerisierten Backend und Ihre Mediendateien auf Objektspeicher – alles unter einer Domain. Routen Sie /api/* zu Ihrem App-Server, /assets/* zu S3, /auth/* zu Ihrem Identitätsanbieter, sauber, schnell und vollständig deklarativ.
Anwendungsfälle
Microservice-Orchestrierung: Leiten Sie verschiedene API-Versionen zu bestimmten herkömmlichen oder modernen Diensten weiter.
Geografische Lokalisierung: Lenken Sie Nutzer aus bestimmten Ländern zu lokalisierten Origin-Servern, um die Latenz zu reduzieren.
A/B-Testing & Canary Deploys: Verwenden Sie headerbasiertes Matching, um einen Prozentsatz des Traffics auf Staging- oder Beta-Dienste umzuleiten.
So funktioniert’s
Die Weiterleitungskonfigurationen befinden sich unter der Top-Level-Navigation der Domains in Ihrem Dashboard. Sie können mithilfe von drei primären Bedingungstypen komplexe Regeln erstellen. Unsere erste Version unterstützt nur Header, aber die anderen Bedingungstypen folgen bald.
Header: Übereinstimmung basierend auf HTTP-Headern wie API-Versionen oder User Agents.
Geo: Leiten Sie den Traffic basierend auf dem geografischen Standort des Nutzers, wie z. B. Ländercodes, weiter.
IP: Filtern und routen Sie basierend auf spezifischen IP-Adressen oder Bereichen.
In dieser Version können Sie überprüfen, ob ein Header-Wert mit einem bestimmten String beginnt (starts_with), mit diesem endet (ends_with), diesem entspricht (equals) oder diesen enthält (contains). Jeder Pfad kann mehrere Regeln definieren, und jeder Regel ist eine Aktion zugeordnet. Die Aktion bestimmt, was passiert, wenn eine Bedingung erfüllt wird. Für die erste Version stellen wir eine „Service“-Aktion bereit, die eine Service-Kennung als Wert verwendet (wir planen weitere Aktionstypen, die in Kürze verfügbar sein werden). Jeder Pfad erfordert eine Standardaktion, also eine Fallback-Route für den Fall, dass keine Regeln zutreffen.
Hier ist ein einfaches Beispiel für die Weiterleitung von Traffic basierend auf dem User Agent-Anfrage-Header:
Route configuration:
Path: /example
Rule:
Condition: header User-Agent starts_with "Mozilla/5.0"
Action: route to service-A
Rule:
Condition: header User-Agent starts_with "Mozilla/4.0"
Action: route to service-B
Default: route to service-C Das System bewertet Anfragen an /example von oben nach unten. Die erste übereinstimmende Regel gewinnt; alles, was keiner Bedingung entspricht, fällt auf die Standardeinstellung zurück.
Der Draft-to-Deploy-Workflow
Request Routing gewährleistet Sicherheit und erhöht die Entwicklergeschwindigkeit durch einen optimierten „Draft-to-Deploy“-Workflow:
Entwurf: Wenn Sie mit einer Bearbeitung beginnen, erstellen wir automatisch einen Entwurf, indem wir Ihre aktive Konfiguration klonen.
Konfigurieren: Fügen Sie Pfade hinzu und definieren Sie Regeln. Jede Routenkonfiguration unterstützt bis zu 10.000 Pfade, 20 Regeln pro Pfad und fünf Bedingungen pro Regel.
Vorschau: Verwenden Sie den API-Endpunkt oder die Benutzeroberfläche von Structured Diff, um genau zu überprüfen, welche Änderungen Sie vorgenommen haben, bevor Sie live gehen.
Aktivieren: Stellen Sie Ihre Änderungen mit einem einzigen Aufruf auf der Edge bereit. Strenge Validierung stellt sicher, dass jeder Pfad eine Ersatzregel hat.
Rollback: Wir speichern die letzten fünf aktiven Versionen, was nahezu sofortige Rollbacks in einen bekannten guten Zustand ermöglicht.
Direkt loslegen
Request Routing ist ab sofort in allen Tarifen verfügbar. Gehen Sie zu Ihrem Dashboard, um Ihre erste Konfiguration zu erstellen, oder lesen Sie die Dokumentation zu Regelsyntax, Wildcard-Abgleich und erweiterten Optionen.
Bauen Sie etwas Interessantes damit? Teilen Sie es in der Fastly-Community oder schreiben Sie uns eine Nachricht an den Fastly-Support.

