Konfigurasikan klien async S3 berbasis Java untuk menggunakan transfer paralel - AWS SDK for Java 2.x

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Konfigurasikan klien async S3 berbasis Java untuk menggunakan transfer paralel

Sejak versi 2.27.5, klien async S3 berbasis Java standar mendukung transfer paralel otomatis (unggahan dan unduhan multipart). Anda mengonfigurasi dukungan untuk transfer paralel saat membuat klien asinkron S3 berbasis Java.

Bagian ini menunjukkan cara mengaktifkan transfer paralel dan cara menyesuaikan konfigurasi.

Buat sebuah instance dari S3AsyncClient

Saat Anda membuat S3AsyncClient instance tanpa memanggil multipart* metode apa pun di builder, transfer paralel tidak diaktifkan. Setiap pernyataan berikut membuat klien asinkron S3 berbasis Java tanpa dukungan untuk unggahan dan unduhan multibagian.

Buat tanpa dukungan multipart

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();

Buat dengan dukungan multipart

Untuk mengaktifkan transfer paralel dengan pengaturan default, panggil multipartEnabled pembangun dan teruskan true seperti yang ditunjukkan pada contoh berikut.

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

Nilai default adalah 8 MiB untuk thresholdInBytes dan minimumPartSizeInBytes pengaturan.

Jika Anda menyesuaikan pengaturan multipart, transfer paralel secara otomatis diaktifkan seperti yang ditunjukkan pada berikut ini.

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();