Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Default konfigurasi cerdas
catatan
Untuk bantuan dalam memahami tata letak halaman pengaturan, atau dalam menafsirkan tabel AWS Dukungan oleh SDK dan alat berikut, lihatMemahami halaman pengaturan panduan ini.
Dengan fitur default konfigurasi cerdas, AWS SDK dapat memberikan nilai default yang telah ditentukan sebelumnya dan dioptimalkan untuk pengaturan konfigurasi lainnya.
Konfigurasikan fungsi ini dengan menggunakan yang berikut:
defaults_mode- pengaturan AWSconfigfile bersamaAWS_DEFAULTS_MODE- variabel lingkunganaws.defaultsMode- Properti sistem JVM: hanya Java/Kotlin-
Dengan pengaturan ini, Anda dapat memilih mode yang selaras dengan arsitektur aplikasi Anda, yang kemudian memberikan nilai default yang dioptimalkan untuk aplikasi Anda. Jika setelan AWS SDK memiliki nilai yang ditetapkan secara eksplisit, maka nilai itu selalu diutamakan. Jika set AWS elan SDK tidak memiliki nilai yang ditetapkan secara eksplisit, dan
defaults_modetidak sama dengan warisan, maka fitur ini dapat memberikan nilai default yang berbeda untuk berbagai pengaturan yang dioptimalkan untuk aplikasi Anda. Pengaturan mungkin termasuk yang berikut: pengaturan komunikasi HTTP, perilaku coba ulang, layanan Setelan titik akhir regional, dan, berpotensi, SDK-related konfigurasi apa pun. Pelanggan yang menggunakan fitur ini bisa mendapatkan default konfigurasi baru yang disesuaikan dengan skenario penggunaan umum. Jika Andadefaults_modetidak sama denganlegacy, sebaiknya lakukan pengujian aplikasi Anda saat Anda memutakhirkan SDK, karena nilai default yang diberikan mungkin berubah seiring perkembangan praktik terbaik.Nilai default:
legacyCatatan: Versi utama SDK baru akan default ke
standard.Nilai yang valid:
-
legacy- Menyediakan pengaturan default yang bervariasi menurut SDK dan ada sebelum pembentukandefaults_mode. -
standard- Menyediakan nilai default terbaru yang direkomendasikan yang seharusnya aman dijalankan di sebagian besar skenario. -
in-region- Dibangun pada mode standar dan termasuk pengoptimalan yang disesuaikan untuk aplikasi yang memang Layanan AWS gil dari dalam yang sama Wilayah AWS. -
cross-region- Dibangun pada mode standar dan termasuk pengoptimalan yang disesuaikan untuk aplikasi yang memanggil Layanan AWS di Wilayah yang berbeda. -
mobile- Dibangun pada mode standar dan termasuk pengoptimalan yang disesuaikan untuk aplikasi seluler. -
auto— Dibangun pada mode standar dan mencakup fitur eksperimental. SDK mencoba menemukan lingkungan runtime untuk menentukan pengaturan yang sesuai secara otomatis. Deteksi otomatis berbasis heuristik dan tidak memberikan akurasi 100%. Jika lingkungan runtime tidak dapat ditentukan,standardmode digunakan. Deteksi otomatis mungkin menanyakan metadata instance, yang mungkin memperkenalkan latensi. Jika latensi startup sangat penting untuk aplikasi Anda, sebaiknya pilih yang eksplisit sebagaidefaults_modegantinya.
Contoh pengaturan nilai ini dalam
configfile:[default]defaults_mode= standardParameter berikut mungkin dioptimalkan berdasarkan pemilihan
defaults_mode:-
retryMode— Menentukan bagaimana SDK mencoba lagi. Lihat Perilaku coba lagi. -
stsRegionalEndpoints— Menentukan bagaimana SDK menentukan Layanan AWS titik akhir yang digunakan untuk berbicara dengan AWS Security Token Service (AWS STS). Lihat AWS STS Titik akhir Regional. -
s3UsEast1RegionalEndpoints— Menentukan bagaimana SDK menentukan titik akhir AWS layanan yang digunakan untuk berbicara dengan Amazon S3 untuk Wilus-east-1ayah. -
connectTimeoutInMillis- Setelah melakukan upaya koneksi awal pada soket, jumlah waktu sebelum waktu habis. Jika klien tidak menerima penyelesaian jabat tangan terhubung, klien menyerah dan gagal dalam operasi. -
tlsNegotiationTimeoutInMillis— Jumlah waktu maksimum yang dapat diambil jabat tangan TLS dari saat pesan CLIENT HELLO dikirim hingga saat klien dan server telah menegosiasikan sandi sepenuhnya dan bertukar kunci.
-
Nilai default untuk setiap pengaturan berubah tergantung pada yang defaults_mode dipilih untuk aplikasi Anda. Nilai-nilai ini saat ini ditetapkan sebagai berikut (dapat berubah):
| Parameter | Mode standard |
Mode in-region |
Mode cross-region |
Mode mobile |
|---|---|---|---|---|
retryMode
|
standard |
standard |
standard |
standard |
stsRegionalEndpoints
|
regional |
regional |
regional |
regional |
s3UsEast1RegionalEndpoints
|
regional |
regional |
regional |
regional |
connectTimeoutInMillis
|
3100 | 1100 | 3100 | 30000 |
tlsNegotiationTimeoutInMillis
|
3100 | 1100 | 3100 | 30000 |
Misalnya, jika yang defaults_mode Anda pilih adalahstandard, maka nilai standard akan ditetapkan untuk retry_mode (dari retry_mode opsi yang valid) dan nilai regional akan ditetapkan untuk stsRegionalEndpoints (dari stsRegionalEndpoints opsi yang valid).
Dukungan oleh AWS SDK dan alat
SDK berikut mendukung fitur dan pengaturan yang dijelaskan dalam topik ini. Setiap pengecualian sebagian dicatat. Setiap pengaturan properti sistem JVM didukung oleh AWS SDK untuk Java dan AWS SDK untuk Kotlin satu-satunya.
| SDK | Didukung | Catatan atau informasi lebih lanjut |
|---|---|---|
| AWS CLI v2 | Tidak | |
| SDK untuk C++ | Ya | Parameter tidak dioptimalkan:stsRegionalEndpoints,s3UsEast1RegionalEndpoints,tlsNegotiationTimeoutInMillis. |
| SDK untuk Go V2 (1.x) | Ya | Parameter tidak dioptimalkan:retryMode,stsRegionalEndpoints,s3UsEast1RegionalEndpoints. |
| SDK untuk Go 1.x (V1) | Tidak | |
| SDK untuk Java 2.x | Ya | Parameter tidak dioptimalkan:stsRegionalEndpoints. |
| SDK untuk Java 1.x | Tidak | |
| SDK untuk JavaScript 3.x | Ya | Parameter tidak dioptimalkan:stsRegionalEndpoints,s3UsEast1RegionalEndpoints,tlsNegotiationTimeoutInMillis. connectTimeoutInMillisdisebutconnectionTimeout. |
| SDK untuk JavaScript 2.x | Tidak | |
| SDK para Kotlin | Tidak | |
| SDK untuk.NET 4.x | Ya | Parameter tidak dioptimalkan:connectTimeoutInMillis,tlsNegotiationTimeoutInMillis. |
| SDK untuk.NET 3.x | Ya | Parameter tidak dioptimalkan:connectTimeoutInMillis,tlsNegotiationTimeoutInMillis. |
| SDK para PHP 3.x | Ya | Parameter tidak dioptimalkan:tlsNegotiationTimeoutInMillis. |
| SDK untuk Python (Boto3) | Ya | Parameter tidak dioptimalkan:tlsNegotiationTimeoutInMillis. |
| SDK para Ruby 3.x | Ya | |
| SDK para Rust | Tidak | |
| SDK para Swift | Tidak | |
| Alat untuk PowerShell V5 | Ya | Parameter tidak dioptimalkan:connectTimeoutInMillis,tlsNegotiationTimeoutInMillis. |
| Alat untuk PowerShell V4 | Ya | Parameter tidak dioptimalkan:connectTimeoutInMillis,tlsNegotiationTimeoutInMillis. |