Client-Konfiguration - AWS SDK for Java 1.x

Wir haben die kommende Version end-of-support für AWS SDK for Java (v1) angekündigt. Wir empfehlen Ihnen, auf AWS SDK for Java Version 2 zu migrieren. Termine, weitere Details und Informationen zur Migration finden Sie in der verlinkten Ankündigung.

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.

Client-Konfiguration

Der AWS SDK for Java ermöglicht es Ihnen, die Standard-Client-Konfiguration zu ändern. Dies ist hilfreich, wenn Sie:

  • Herstellen einer Internetverbindung über einen Proxy

  • Ändern von HTTP-Transport-Einstellungen, z. B. Verbindungstimeout und wiederholte Anforderungsversuche

  • Angabe von TCP-Socketpuffer-Größenhinweisen

Proxy-Konfiguration

Wenn Sie ein Client-Objekt erstellen, können Sie ein optionales ClientConfigurationObjekt übergeben, um die Konfiguration des Clients anzupassen.

Wenn Sie sich über einen Proxy-Server mit dem Internet verbinden, sollten Sie über das ClientConfiguration-Objekt die Einstellungen des Proxy-Servers konfigurieren (Proxy-Host, ‑Port und Benutzername/Passwort).

HTTP-Transport-Konfiguration

Mithilfe des ClientConfigurationObjekts können Sie mehrere HTTP-Transportoptionen konfigurieren. Gelegentlich werden neue Optionen hinzugefügt. Eine vollständige Liste der Optionen, die Sie abrufen oder festlegen können, finden Sie in der AWS SDK for Java API-Referenz.

Anmerkung

Jeder konfigurierbare Wert hat einen von einer Konstanten definierten Standardwert. Eine Liste der konstanten Werte für finden Sie ClientConfiguration unter Konstante Feldwerte in der AWS SDK for Java API-Referenz.

Maximale Anzahl der Verbindungen

Sie können die maximal zulässige Anzahl offener HTTP-Verbindungen festlegen, indem Sie den verwenden ClientConfiguration. setMaxConnectionsMethode.

Wichtig

Legen Sie die maximalen Verbindungen auf die Anzahl der gleichzeitigen Transaktionen fest, um Verbindungskonflikte und eine schlechte Leistung zu vermeiden. Den Standardwert für maximale Verbindungen finden Sie unter Konstante Feldwerte in der AWS SDK for Java API-Referenz.

Timeouts und Fehlerbehandlung

Sie können Optionen im Zusammenhang mit Timeouts und der Fehlerbehandlung für HTTP-Verbindungen festlegen.

  • Verbindungstimeout

    Das Verbindungstimeout ist die Zeit (in Millisekunden), die die HTTP-Verbindung wartet, um eine Verbindung herzustellen. Der Standardwert beträgt 10 000 ms.

    Um diesen Wert selbst festzulegen, verwenden Sie den ClientConfiguration. setConnectionTimeoutMethode.

  • Connection Time to Live (TTL, Gültigkeitsdauer der Verbindung)

    Standardmäßig versucht das SDK, HTTP-Verbindungen so lange wie möglich wiederzuverwenden. In Fehlersituationen, bei denen eine Verbindung zu einem Server aufgebaut wird, der außer Betrieb genommen wird, sorgt eine endliche TTL für eine schnellere Anwendungswiederherstellung. Wird beispielsweise eine 15-Minuten-TTL eingestellt, ist dadurch sichergestellt, dass auch dann, wenn Sie eine Verbindung zu einem Server aufgebaut haben, bei dem Probleme auftreten, innerhalb von 15 Minuten eine Verbindung zu einem neuen Server hergestellt wird.

    Verwenden Sie die Methode ClientConfiguration.setConnectionTTL, um die TTL für die HTTP-Verbindung festzulegen.

  • Maximale Anzahl der erneuten Versuche

    Die standardmäßige maximale Wiederholungsanzahl für Fehler bei wiederholbaren Aktionen ist 3. Sie können einen anderen Wert festlegen, indem Sie die verwenden. ClientConfiguration setMaxErrorMethode wiederholen.

Lokale Adresse

Um die lokale Adresse festzulegen, an die der HTTP-Client gebunden wird, verwenden SieClientConfiguration. setLocalAddress.

TCP-Socketpuffer-Größenhinweise

Fortgeschrittene Benutzer, die TCP-Parameter auf niedriger Ebene optimieren möchten, können zusätzlich Hinweise zur Größe des TCP-Puffers über das ClientConfigurationObjekt festlegen. Die meisten Benutzer müssen diese Einstellungen nie anpassen, sie stehen aber für fortgeschrittene Benutzer bereit.

Die optimalen TCP-Puffergrößen für eine Anwendung hängen stark von der Konfiguration und den Fähigkeiten des Netzwerks und des Betriebssystems ab. Beispielsweise bieten die meisten modernen Betriebssysteme eine Logik zur automatischen Anpassung der TCP-Puffergrößen. Dies kann sich weitreichend auf die Leistung von TCP-Verbindungen auswirken, wenn diese lang genug geöffnet bleiben, damit die automatische Anpassung die Puffergrößen optimieren kann.

Große Puffer (z. B. 2 MB) ermöglichen dem Betriebssystem, mehr Daten im Arbeitsspeicher zu puffern, ohne dass der Remote-Server die Informationen bestätigen muss. Sie sind also besonders nützlich, wenn das Netzwerk eine hohe Latenz aufweist.

Dies ist nur ein Hinweis, an den sich das Betriebssystem nicht halten muss. Bei Verwendung dieser Option sollten Benutzer immer die beim Betriebssystem konfigurierten Grenz- und Standardwerte überprüfen. In den meisten Betriebssystemen ist eine maximale TCP-Puffergröße konfiguriert, die nicht überschritten wird, es sei denn, Sie heben die maximale TCP-Puffergröße explizit an.

Für die Konfiguration von TCP-Puffergrößen und betriebssystemspezifischen TCP-Einstellungen stehen viele Ressourcen zur Verfügung, wie z. B.: