AWS SDK para Java 1.x ha entrado en modo de mantenimiento el 31 de julio de 2024 y llegará al final de soporte
Prácticas recomendadas de desarrollo de aplicaciones de AWS con AWS SDK para Java
Las siguientes prácticas recomendadas pueden ayudarle a evitar o resolver problemas cuando desarrolla aplicaciones de AWS con AWS SDK para Java. Hemos organizado las prácticas recomendadas por servicio.
S3
Evitar excepciones ResetExceptions
Cuando carga objetos en Amazon S3 mediante el uso de secuencias (ya sea a través de un cliente de AmazonS3 o TransferManager), es posible que surjan problemas de conectividad de red o tiempo de espera. De forma predeterminada, AWS SDK para Java intenta recuperar las transferencias que han producido un error marcando la secuencia de entrada antes del comienzo de la transferencia y reiniciándola antes de volver a realizar la transferencia.
Si la secuencia no admite el marcado y el restablecimiento, el SDK produce una excepción ResetException cuando hay errores transitorios y los reintentos están habilitados.
Práctica recomendada
Le recomendamos que utilice secuencias que admitan operaciones de marcado y restablecimiento.
El método más fiable para evitar una excepción ResetException es proporcionar los datos mediante el uso de un objeto File
Si la secuencia no es un FileInputStreamsetReadLimit de RequestClientOptions. Su valor predeterminado es 128 KB. Al establecer el valor del límite de lectura en un byte más que el tamaño de la secuencia, evitará que se produzca una excepción ResetException.
Por ejemplo, si el tamaño máximo esperado de una secuencia es de 100 000 bytes, defina el límite de lectura en 100 001 (100 000+1) bytes. Las operaciones de marca y restablecimiento siempre funcionan para 100 000 bytes o menos. Tenga en cuenta que esto puede provocar que algunas secuencias almacenen ese número de bytes en memoria.