Bewährte Methoden für die AWS Entwicklung mit dem AWS SDK for Java - 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.

Bewährte Methoden für die AWS Entwicklung mit dem AWS SDK for Java

Die folgenden bewährten Methoden können Ihnen helfen, Probleme oder Probleme bei der Entwicklung von AWS Anwendungen mit dem zu vermeiden AWS SDK for Java. Wir haben diese bewährten Methoden nach Service angeordnet.

S3

Vermeiden ResetExceptions

Wenn Sie Objekte mithilfe Amazon S3 von Streams hochladen (entweder über einen AmazonS3 Client oderTransferManager), können Netzwerkverbindungs- oder Timeoutprobleme auftreten. Standardmäßig schlagen Übertragungen bei AWS SDK for Java Wiederholungsversuchen fehl, indem der Eingabestream vor dem Start einer Übertragung markiert und dann vor einem erneuten Versuch zurückgesetzt wird.

Wenn der Stream das Markieren und Zurücksetzen nicht unterstützt, gibt das SDK eine Meldung aus, ResetExceptionwenn vorübergehende Fehler auftreten und Wiederholungsversuche aktiviert sind.

Bewährte Methode

Wir empfehlen, dass Sie Streams einsetzen, die Markieren und Zurücksetzen unterstützen.

Der zuverlässigste Weg, dies zu vermeiden, ResetExceptionbesteht darin, Daten mithilfe einer Datei oder bereitzustellen, mit der sie umgehen AWS SDK for Java können FileInputStream, ohne durch Markierungs- und Reset-Beschränkungen eingeschränkt zu sein.

Wenn es sich bei dem Stream nicht um einen Stream handelt, FileInputStreamaber das Markieren und Zurücksetzen unterstützt, können Sie das Markierungslimit mithilfe der setReadLimit Methode von RequestClientOptionsfestlegen. Der Standardwert beträgt 128 KB. Wenn Sie den Wert für das Leselimit auf ein Byte setzen, das über der Größe des Streams liegt, wird a zuverlässig vermieden ResetException.

Beträgt die maximal erwartete Größe eines Streams beispielsweise 100 000 Bytes, legen Sie die Lesegrenze auf 100 001 (100 000 + 1) Bytes fest. Das Markieren und Zurücksetzen funktioniert immer für 100 000 oder weniger Bytes. Hinweis: Dies könnte bei einigen Streams dazu führen, dass die angegebene Anzahl an Bytes in den Arbeitsspeicher gepuffert wird.