Konfigurieren Ihres DAX-Clients - Amazon DynamoDB

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Konfigurieren Ihres DAX-Clients

Der DAX-Cluster ist ein instanzbasierter Cluster, auf den über verschiedene DAX zugegriffen werden kann. SDKs Jedes SDK bietet Entwicklern konfigurierbare Optionen wie requestTimeout und Verbindungen, um spezifische Anwendungsanforderungen zu erfüllen.

Bei der Konfiguration Ihres DAX-Clients ist der Umfang Ihrer Client-Anwendung von entscheidender Bedeutung, insbesondere das Verhältnis von Client-Instances zu DAX-Server-Instances (maximal 11). Große Client-Instance-Flotten können zahlreiche Verbindungen zu DAX-Server-Instances generieren und diese möglicherweise überfordern. In dieser Anleitung werden bewährte Methoden für die DAX-Client-Konfiguration beschrieben.

Bewährte Methoden

  1. Client-Instances – Implementieren Sie Singleton-Client-Instances, um sicherzustellen, dass Instances anforderungsübergreifend wiederverwendet werden. Weitere Informationen zur Implementierung finden Sie in Schritt 4: Ausführen einer Beispielanwendung.

  2. Anforderungs-Timeouts – Anwendungen benötigen zwar oft niedrige Anforderungs-Timeouts, um eine minimale Latenz für Upstream-Systeme zu gewährleisten, aber zu niedrige Timeouts können zu Problemen führen. Niedrige Timeouts können häufige Wiederverbindungen zu Server-Instances auslösen, wenn auf DAX-Servern vorübergehende Latenzspitzen auftreten. Wenn es zu einem Timeout kommt, beendet der DAX-Client die bestehende Serverknotenverbindung und richtet eine neue ein. Da der Verbindungsaufbau ressourcenintensiv ist, können zahlreiche aufeinanderfolgende Verbindungen die DAX-Server überlasten. Wir empfehlen Folgendes:

    • Behalten Sie die Standardeinstellungen für das Anforderungs-Timeout bei.

    • Wenn niedrigere Timeouts erforderlich sind, implementieren Sie separate Anwendungs-Threads mit niedrigeren Timeout-Werten und schließen Sie Wiederholungsmechanismen mit exponentiellem Backoff ein.

  3. Verbindungs-Timeout – Für die meisten Anwendungen empfehlen wir, die Standardeinstellungen für das Verbindungs-Timeout beizubehalten.

  4. Gleichzeitige Verbindungen — Bestimmte Verbindungen SDKs, z. B. JavaV2, ermöglichen die Anpassung gleichzeitiger Verbindungen zum DAX-Server. Wesentliche Überlegungen:

    • DAX-Server-Instances können bis zu 40 000 gleichzeitige Verbindungen verarbeiten.

    • Die Standardeinstellungen eignen sich für die meisten Anwendungsfälle.

    • Große Client-Instances in Kombination mit vielen gleichzeitigen Verbindungen können Server überlasten.

    • Niedrigere Werte für gleichzeitige Verbindungen reduzieren das Risiko einer Serverüberlastung.

    • Beispiel für eine Leistungsberechnung:

      • Unter der Annahme einer Anforderungslatenz von 1 ms kann jede Verbindung theoretisch 1 000 Anforderungen pro Sekunde verarbeiten.

      • Bei einem Cluster mit 3 Knoten kann eine einzelne Client-Instance, die eine Verbindung mit allen Knoten herstellt, 3 000 Anforderungen pro Sekunde verarbeiten.

      • Bei 10 Verbindungen kann der Client etwa 30 000 Anforderungen pro Sekunde verarbeiten.

        Empfehlung: Beginnen Sie mit niedrigeren gleichzeitigen Verbindungseinstellungen und überprüfen Sie diese anhand von Leistungstests mit den zu erwartenden Produktions-Workload-Mustern.