Configura il client asincrono S3 basato su Java per utilizzare trasferimenti paralleli - AWS SDK for Java 2.x

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configura il client asincrono S3 basato su Java per utilizzare trasferimenti paralleli

Dalla versione 2.27.5, il client asincrono S3 standard basato su Java supporta trasferimenti paralleli automatici (caricamenti e download multiparte). Il supporto per i trasferimenti paralleli viene configurato quando si crea il client asincrono S3 basato su Java.

Questa sezione mostra come abilitare i trasferimenti paralleli e come personalizzare la configurazione.

Creare un'istanza di S3AsyncClient

Quando crei un'S3AsyncClientistanza senza chiamare nessuno dei multipart* metodi sul builder, i trasferimenti paralleli non sono abilitati. Ciascuna delle seguenti istruzioni crea un client asincrono S3 basato su Java senza supporto per caricamenti e download multiparte.

Crea senza supporto multiparte

import software.amazon.awssdk.auth.credentials.ProcessCredentialsProvider; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.s3.S3AsyncClient; S3AsyncClient s3Client = S3AsyncClient.create(); S3AsyncClient s3Client2 = S3AsyncClient.builder().build(); S3AsyncClient s3Client3 = S3AsyncClient.builder() .credentialsProvider(ProcessCredentialsProvider.builder().build()) .region(Region.EU_NORTH_1) .build();

Crea con supporto multiparte

Per abilitare i trasferimenti paralleli con le impostazioni predefinite, chiama multipartEnabled on the builder e passali true come mostrato nell'esempio seguente.

S3AsyncClient s3AsyncClient2 = S3AsyncClient.builder() .multipartEnabled(true) .build();

Il valore predefinito è 8 MiB per thresholdInBytes e minimumPartSizeInBytes impostazioni.

Se si personalizzano le impostazioni multiparte, i trasferimenti paralleli vengono abilitati automaticamente come illustrato di seguito.

import software.amazon.awssdk.services.s3.S3AsyncClient; import static software.amazon.awssdk.transfer.s3.SizeConstant.MB; S3AsyncClient s3AsyncClient2 = S3AsyncClient.builder() .multipartConfiguration(b -> b .thresholdInBytes(16 * MB) .minimumPartSizeInBytes(10 * MB)) .build();