Envoy is an L7 proxy and communication bus designed for large modern service oriented architectures.

Kurze Zusammenfassung der Envoy-Leistungsmerkmale.

  • Out-of-Process-Architektur: Envoy läuft als eigenständiger Prozess neben jedem Anwendungsserver und bildet ein transparentes Kommunikationsnetzwerk, das verschiedene Programmiersprachen wie Java, C++, Go, PHP und Python unterstützt.
  • L3/L4-Filterarchitektur: Eine pluggable Filter-Chain ermöglicht die Integration verschiedener Filter für TCP/UDP-Proxys, einschließlich Unterstützung für Protokolle wie Redis, MongoDB und Postgres.
  • HTTP L7-Filterarchitektur: Zusätzliche HTTP-Filter können in das HTTP-Verbindungsmanagement integriert werden, um Aufgaben wie Pufferung, Ratenbegrenzung und Routing durchzuführen.
  • Erstklassige HTTP/2-Unterstützung: Envoy unterstützt sowohl HTTP/1.1 als auch HTTP/2 und kann als transparenter Proxy zwischen diesen Protokollen agieren.
  • HTTP/3-Unterstützung (derzeit in Alpha): Ab Version 1.19.0 unterstützt Envoy HTTP/3 sowohl upstream als auch downstream und kann zwischen HTTP/1.1, HTTP/2 und HTTP/3 in beide Richtungen übersetzen.
  • HTTP L7-Routing: Envoy verfügt über ein Routing-Subsystem, das Anfragen basierend auf Pfad, Autorität, Inhaltstyp und anderen Kriterien weiterleiten oder umleiten kann.
  • gRPC-Unterstützung: Envoy unterstützt alle HTTP/2-Funktionen, die für das Routing und Load Balancing von gRPC-Anfragen und -Antworten erforderlich sind.
  • Service Discovery und dynamische Konfiguration: Envoy kann eine Reihe von dynamischen Konfigurations-APIs nutzen, um zentral verwaltete Updates zu Hosts, Clustern, HTTP-Routing und mehr zu erhalten.
  • Health Checking: Ein integriertes Subsystem ermöglicht aktives Health Checking von Upstream-Service-Clustern, um gesunde Load-Balancing-Ziele zu bestimmen.
  • Advanced Load Balancing: Envoy bietet verschiedene Load-Balancing-Strategien, einschließlich automatischer Retries, Circuit Breaking und globaler Rate Limiting.
  • Observability: Envoy verfügt über umfangreiche Funktionen zur Überwachung, einschließlich detaillierter Statistiken, Tracing und Logging, um die Netzwerktransparenz zu erhöhen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert