

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.

# Mit dem AWS SDK for Java 2.x
<a name="using"></a>

Dieses Kapitel zeigt Ihnen, wie Sie den AWS SDK for Java 2.x effektiv nutzen können. Erfahren Sie, wie Sie Service-Clients erstellen, Anfragen stellen, Antworten bearbeiten und Fehler verwalten. Das Kapitel behandelt synchrone und asynchrone Programmierung, paginierte Ergebnisse, Wartezeiten für die Ressourcenüberwachung und Leistungsoptimierung. 

Außerdem finden Sie bewährte Methoden für die Wiederverwendung von Clients, Anleitungen zur Fehlerbehebung, Lambda-Startoptimierung, HTTP/2-Unterstützung und DNS-Konfiguration.

**Contents**
+ [AWS-Service Anfragen stellen mit dem AWS SDK for Java 2.x](work-witih-clients.md)
  + [Verwenden von Service-Clients zum Stellen von Anfragen](work-witih-clients.md#using-service-client)
    + [Erstellen Sie einen Service-Client](work-witih-clients.md#work-with-clients-create)
    + [Standard-Client-Konfiguration](work-witih-clients.md#using-default-client)
    + [Service-Clients konfigurieren](work-witih-clients.md#using-configure-service-clients)
    + [Schließen Sie den Service-Client](work-witih-clients.md#using-closing-client)
  + [Anfragen stellen](work-witih-clients.md#using-making-requests)
    + [Verwenden Sie Anfragen, um die Client-Konfiguration zu überschreiben](work-witih-clients.md#using-override-client-config-request)
  + [Umgang mit Antworten](work-witih-clients.md#using-handling-responses)
+ [Asynchrone Programmierung mit dem AWS SDK for Java 2.x](asynchronous.md)
  + [Verwenden Sie einen asynchronen Client APIs](asynchronous.md#basics-async-non-streaming)
  + [Behandeln Sie das Streaming mit asynchronen Methoden](asynchronous.md#basics-async-streaming)
  + [Konfigurieren Sie erweiterte asynchrone Optionen](asynchronous.md#advanced-operations)
+ [Bewährte Methoden für die Verwendung des AWS SDK for Java 2.x](best-practices.md)
  + [Vermeiden Sie hängende Anfragen, indem Sie API-Timeouts konfigurieren](best-practices.md#bestpractice5)
  + [Verbessern Sie die Leistung, indem Sie Service-Clients wiederverwenden](best-practices.md#bestpractice1)
  + [Vermeiden Sie Ressourcenlecks, indem Sie ungenutzte Service-Clients schließen](best-practices.md#bestpractice-close-client)
  + [Vermeiden Sie die Erschöpfung des Verbindungspools, indem Sie Eingabestreams schließen](best-practices.md#bestpractice2)
  + [Optimieren Sie die HTTP-Leistung für die Arbeitslast Ihrer Anwendung](best-practices.md#bestpractice3)
  + [Verbessern Sie die SSL-Leistung mit OpenSSL für asynchrone Clients](best-practices.md#bestpractice4)
  + [Überwachen Sie die Anwendungsleistung mit SDK-Metriken](best-practices.md#bestpractice6)
+ [Behandlung von Fehlern in der AWS SDK for Java 2.x](handling-exceptions.md)
  + [Warum ungeprüfte Ausnahmen?](handling-exceptions.md#why-unchecked-exceptions)
  + [AwsServiceException (und Unterklassen)](handling-exceptions.md#sdkserviceexception-and-subclasses)
  + [SdkClientException](handling-exceptions.md#sdkclientexception)
  + [Ausnahmen und Wiederholungsverhalten](handling-exceptions.md#retried-exceptions)
+ [Verwenden von paginierten Ergebnissen in der 2.x AWS SDK für Java](pagination.md)
  + [Synchrone Paginierung](pagination.md#synchronous-pagination)
    + [Iterieren Sie über Seiten hinweg](pagination.md#iterate-pages)
    + [Iteriere über Objekte](pagination.md#iterate-objects)
      + [Verwenden Sie einen Stream](pagination.md#use-a-stream)
      + [Verwenden Sie eine For-Each-Schleife](pagination.md#for-loop)
    + [Manuelle Paginierung](pagination.md#manual-pagination)
  + [Asynchrone Paginierung](pagination.md#asynchronous-pagination)
    + [Iterieren Sie über Seiten mit Tabellennamen](pagination.md#iterate-pages-async)
      + [Benutze ein `Subscriber`](pagination.md#use-a-subscriber)
      + [Benutze ein `Consumer`](pagination.md#id1pagination)
    + [Iteriere über Tabellennamen](pagination.md#iterate-objects-async)
      + [Verwenden Sie ein `Subscriber`](pagination.md#id2)
      + [Benutze ein `Consumer`](pagination.md#for-loop-async)
    + [Verwenden Sie die Bibliothek eines Drittanbieters](pagination.md#use-third-party-library)
+ [Mit Kellnern in der AWS SDK for Java 2.x](waiters.md)
  + [Voraussetzungen](waiters.md#prerequisiteswaiters)
  + [Kellner benutzen](waiters.md#id1waiters)
    + [Synchrone Programmierung](waiters.md#synchronous-programming)
    + [Asynchrone Programmierung](waiters.md#asynchronous-programming)
  + [Kellner konfigurieren](waiters.md#configuring-waiters)
    + [Konfigurieren Sie einen Kellner](waiters.md#configure-a-waiter)
    + [Überschreiben Sie die Konfiguration für eine bestimmte Anfrage](waiters.md#override-configuration-for-a-specific-request)
  + [Codebeispiele](waiters.md#code-examples)
+ [Problembehebung FAQs](troubleshooting.md)
  + [Wie behebe ich den Fehler "`java.net.SocketException`: Verbindung zurückgesetzt“ oder „Server konnte die Antwort nicht abschließen“?](troubleshooting.md#faq-socketexception)
  + [Wie behebe ich das „Verbindungs-Timeout“?](troubleshooting.md#faq-connection-timeout)
  + [Wie behebe ich "`java.net.SocketTimeoutException`: Timeout beim Lesen“?](troubleshooting.md#faq-socket-timeout)
  + [Wie behebe ich den Fehler „HTTP-Anfrage kann nicht ausgeführt werden: Timeout beim Warten auf Verbindung vom Pool“?](troubleshooting.md#faq-pool-timeout)
  + [Wie behebe ich ein`NoClassDefFoundError`, `NoSuchMethodError` oder`NoSuchFieldError`?](troubleshooting.md#faq-classpath-errors)
  + [Wie behebe ich den Fehler "`SignatureDoesNotMatch`" oder den Fehler „Die von uns berechnete Anforderungssignatur stimmt nicht mit der von Ihnen angegebenen Signatur überein“?](troubleshooting.md#faq-signature-does-not-match-error)
  + [Wie behebe ich den Fehler "`java.lang.IllegalStateException`: Der Verbindungspool wurde heruntergefahren“?](troubleshooting.md#faq-connection-pool-shutdown-exception)
  + [Wie behebe ich „Anmeldeinformationen können von keinem der Anbieter in der Kette geladen werden“? AwsCredentialsProviderChain](troubleshooting.md#faq-credentials-provider-chain)
    + [Häufige Ursachen und Lösungen](troubleshooting.md#faq-cred-provider-chain-common-causes-and-solutions)
      + [Überprüfen Sie die Konfiguration Ihrer Anmeldeinformationen](troubleshooting.md#faq-cred-provider-chain-check-config)
        + [Für Amazon EC2 EC2-Instances](troubleshooting.md#faq-cred-check-ec2)
        + [Für Container-Umgebungen](troubleshooting.md#faq-cred-check-container-env)
        + [Für die lokale Entwicklung](troubleshooting.md#faq-cred-check-local-dev)
        + [Für den Web-Identitätsverbund](troubleshooting.md#faq-cred-check-web-id-federation)
      + [Probleme mit der Netzwerk- oder Proxyverbindung](troubleshooting.md#faq-credentials-provider-chain-network-issues)
+ [Verkürzen Sie die SDK-Startzeit für AWS Lambda](lambda-optimize-starttime.md)
  + [Verwenden Sie einen AWS CRT-basierten HTTP-Client](lambda-optimize-starttime.md#lambda-quick-url)
  + [Entfernen Sie ungenutzte HTTP-Client-Abhängigkeiten](lambda-optimize-starttime.md#lambda-quick-remove-deps)
  + [Konfigurieren Sie Service-Clients für Shortcut-Suchvorgänge](lambda-optimize-starttime.md#lambda-quick-clients)
  + [Initialisieren Sie den SDK-Client außerhalb des Lambda-Funktionshandlers](lambda-optimize-starttime.md#lambda-quick-initialize)
  + [Minimiert die Dependency-](lambda-optimize-starttime.md#lambda-quick-di)
  + [Verwenden Sie ein Targeting vom Typ Maven Archetype AWS Lambda](lambda-optimize-starttime.md#lambda-quick-maven)
  + [Ziehen Sie Lambda SnapStart für Java in Betracht](lambda-optimize-starttime.md#lambda-quick-snapstart)
  + [Änderungen an Version 2.x, die sich auf die Startzeit auswirken](lambda-optimize-starttime.md#example-client-configuration)
  + [Weitere Ressourcen](lambda-optimize-starttime.md#lambda-quick-resources)
+ [Implementieren `ContentStreamProvider` Sie in der AWS SDK for Java 2.x](content-stream-provider.md)
  + [Verwendung von `mark()` und `reset()`](content-stream-provider.md#csp-impl-mark-reset)
  + [Verwenden Sie die Pufferung, falls `mark()` und nicht verfügbar `reset()` sind](content-stream-provider.md#csp-impl-unsupported-streams)
  + [Erstelle neue Streams](content-stream-provider.md#csp-impl-new-stream)
+ [Legen Sie die JVM-TTL für DNS-Namenssuchen fest](jvm-ttl-dns.md)
  + [Wie legt man die JVM-TTL fest](jvm-ttl-dns.md#how-to-set-the-jvm-ttl)
    + [Option 1: Stellen Sie sie programmgesteuert in Ihrer Anwendung ein](jvm-ttl-dns.md#set-ttl-programmatically)
    + [Option 2: Legen Sie es in der Datei java.security fest](jvm-ttl-dns.md#set-ttl-java-security-file)
    + [Option 3: Verwenden Sie das Fallback für JDK-Systemeigenschaften (Befehlszeile)](jvm-ttl-dns.md#set-ttl-system-property)
+ [Arbeiten Sie mit HTTP/2 in der AWS SDK für Java](http2.md)