Konfigurasi Klien - AWS SDK for Java 1.x

AWS SDK for Java 1.x telah memasuki mode pemeliharaan pada 31 Juli 2024, dan akan mencapai end-of-supportpada 31 Desember 2025. Kami menyarankan Anda bermigrasi ke AWS SDK for Java 2.xuntuk terus menerima fitur baru, peningkatan ketersediaan, dan pembaruan keamanan.

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

Konfigurasi Klien

AWS SDK for Java Ini memungkinkan Anda untuk mengubah konfigurasi klien default, yang sangat membantu ketika Anda ingin:

  • Connect ke Internet melalui proxy

  • Ubah pengaturan HTTP transport, seperti batas waktu koneksi dan minta percobaan ulang

  • Tentukan TCP petunjuk ukuran buffer soket

Konfigurasi Proxy

Saat membuat objek klien, Anda dapat meneruskan ClientConfigurationobjek opsional untuk menyesuaikan konfigurasi klien.

Jika Anda terhubung ke Internet melalui server proxy, Anda harus mengonfigurasi pengaturan server proxy Anda (host proxy, port, dan nama pengguna/kata sandi) melalui objek. ClientConfiguration

HTTPKonfigurasi Transportasi

Anda dapat mengonfigurasi beberapa opsi HTTP transportasi dengan menggunakan ClientConfigurationobjek. Opsi baru kadang-kadang ditambahkan; untuk melihat daftar lengkap opsi yang dapat Anda ambil atau atur, lihat AWS SDK for Java API Referensi.

catatan

Masing-masing nilai yang dapat dikonfigurasi memiliki nilai default yang ditentukan oleh konstanta. Untuk daftar nilai konstantaClientConfiguration, lihat Nilai Bidang Konstan dalam AWS SDK for Java API Referensi.

Koneksi Maksimum

Anda dapat mengatur jumlah maksimum HTTP koneksi terbuka yang diizinkan dengan menggunakan file ClientConfiguration. setMaxConnectionsmetode.

penting

Atur koneksi maksimum ke jumlah transaksi bersamaan untuk menghindari perselisihan koneksi dan kinerja yang buruk. Untuk nilai koneksi maksimum default, lihat Nilai Bidang Konstan dalam AWS SDK for Java API Referensi.

Timeout dan Penanganan Kesalahan

Anda dapat mengatur opsi yang terkait dengan batas waktu dan menangani kesalahan dengan HTTP koneksi.

  • Batas Waktu Koneksi

    Batas waktu koneksi adalah jumlah waktu (dalam milidetik) HTTP koneksi akan menunggu untuk membuat koneksi sebelum menyerah. Defaultnya adalah 10.000 ms.

    Untuk menetapkan nilai ini sendiri, gunakan ClientConfiguration. setConnectionTimeoutmetode.

  • Waktu Koneksi untuk Hidup (TTL)

    Secara default, SDK akan mencoba untuk menggunakan kembali HTTP koneksi selama mungkin. Dalam situasi kegagalan di mana koneksi dibuat ke server yang telah dibawa keluar dari layanan, memiliki batas TTL dapat membantu pemulihan aplikasi. Misalnya, pengaturan 15 menit TTL akan memastikan bahwa meskipun Anda memiliki koneksi yang dibuat ke server yang mengalami masalah, Anda akan membangun kembali koneksi ke server baru dalam waktu 15 menit.

    Untuk mengatur HTTP koneksiTTL, gunakan file ClientConfiguration. setConnectionTTLmetode.

  • Mencoba Ulang Kesalahan Maksimum

    Jumlah percobaan ulang maksimum default untuk kesalahan yang dapat diambil adalah 3. Anda dapat menetapkan nilai yang berbeda dengan menggunakan ClientConfiguration. setMaxErrorMetode coba lagi.

Alamat Lokal

Untuk mengatur alamat lokal yang akan diikat HTTP klien, gunakanClientConfiguration. setLocalAddress.

TCPPetunjuk Ukuran Penyangga Soket

Pengguna tingkat lanjut yang ingin menyetel TCP parameter tingkat rendah juga dapat mengatur petunjuk ukuran TCP buffer melalui objek. ClientConfiguration Mayoritas pengguna tidak akan pernah perlu mengubah nilai-nilai ini, tetapi mereka disediakan untuk pengguna tingkat lanjut.

Ukuran TCP buffer optimal untuk suatu aplikasi sangat bergantung pada konfigurasi dan kemampuan jaringan dan sistem operasi. Misalnya, sebagian besar sistem operasi modern menyediakan logika penyetelan otomatis untuk ukuran TCP buffer. Ini dapat berdampak besar pada kinerja TCP koneksi yang terbuka cukup lama untuk penyetelan otomatis untuk mengoptimalkan ukuran buffer.

Ukuran buffer yang besar (misalnya, 2 MB) memungkinkan sistem operasi untuk menyangga lebih banyak data dalam memori tanpa memerlukan server jarak jauh untuk mengakui penerimaan informasi tersebut, sehingga dapat sangat berguna ketika jaringan memiliki latensi tinggi.

Ini hanya petunjuk, dan sistem operasi mungkin tidak menghormatinya. Saat menggunakan opsi ini, pengguna harus selalu memeriksa batas dan default yang dikonfigurasi sistem operasi. Sebagian besar sistem operasi memiliki batas ukuran TCP buffer maksimum yang dikonfigurasi, dan tidak akan membiarkan Anda melampaui batas itu kecuali Anda secara eksplisit menaikkan batas ukuran TCP buffer maksimum.

Banyak sumber daya tersedia untuk membantu mengonfigurasi ukuran TCP buffer dan TCP pengaturan khusus sistem operasi, termasuk yang berikut ini: