Wie wird die Performance von AWS PrivateLink bei extrem hohen Durchsatzraten durch die gezielte Skalierung von VPC Endpoint Services optimiert?

Die Performance-Optimierung von AWS PrivateLink bei extremen Durchsatzraten konzentriert sich primär auf die Skalierung des Network Load Balancers (NLB), der als Frontend des VPC Endpoint Service fungiert. Da PrivateLink den Traffic über den NLB an die Service-Provider-Instanzen leitet, ist die horizontale Skalierung der Backend-Ressourcen der entscheidende Hebel.

Wir optimieren den Durchsatz durch folgende technische Maßnahmen:

  1. Cross-Zone Load Balancing: Wir aktivieren dieses Feature, um den Traffic gleichmäßig über alle registrierten Targets in allen Availability Zones (AZs) zu verteilen. Ohne diese Funktion würde jeder NLB-Node nur an Targets in seiner eigenen AZ senden, was bei ungleichmäßiger Lastverteilung zu Engpässen führt.
  2. Horizontal Scaling der Targets: Wir implementieren Auto Scaling Groups (ASG), die auf Netzwerkmetriken reagieren. Durch die Erhöhung der Anzahl der Instanzen in der Target Group wird die Last pro Instanz gesenkt.
  3. Optimierung der Instanztypen: Wir setzen auf Instanzen mit Enhanced Networking (ENA), um die Latenz zu minimieren und den Paketdurchsatz zu maximieren. Dies ist besonders in komplexen Szenarien des Data Engineering relevant, wo massive Datenströme zwischen VPCs verschoben werden.
  4. Vermeidung von Port-Erschöpfung: Bei extrem hohen Verbindungsraten optimieren wir die TCP-Keepalive-Einstellungen und das Timeout-Management, um die Anzahl der gleichzeitig offenen Verbindungen am NLB effizient zu verwalten.

Die folgende Tabelle verdeutlicht den Unterschied zwischen einer Standard-Konfiguration und einer auf hohen Durchsatz optimierten Architektur:

KomponenteStandard-KonfigurationHigh-Throughput Optimierung
NLB VerteilungSingle-AZ / DefaultCross-Zone Load Balancing aktiv
Target ScalingStatische InstanzzahlDynamische ASG (Netzwerk-basiert)
Netzwerk-InterfaceStandard NICENA (Elastic Network Adapter)
Traffic-StrategieEin einzelner EndpointSharding über mehrere Endpoint Services

Um die Performance zu validieren, nutzen wir CloudWatch-Metriken wie ActiveConnectionCount und NewConnectionCount. Wenn die Grenzen eines einzelnen NLB erreicht werden, implementieren wir ein Sharding-Konzept, bei dem der Traffic auf mehrere VPC Endpoint Services verteilt wird.

Wir empfehlen, bei extremen Lastspitzen nicht auf einen einzelnen massiven Endpoint zu setzen, sondern eine Architektur mit mehreren NLBs und einer strikten Trennung der Traffic-Klassen zu implementieren, um Single-Points-of-Failure auf Netzwerkebene zu vermeiden.

Sergej Wiens

Sergej Wiens

Gründer & Software Architekt