Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Default konfigurasi cerdas
Dengan fitur default konfigurasi cerdas, AWS SDKsdapat memberikan nilai default yang telah ditentukan dan dioptimalkan untuk pengaturan konfigurasi lainnya.
Konfigurasikan fungsi ini dengan menggunakan yang berikut:
defaults_mode
- dibagikan AWSconfig
pengaturan fileAWS_DEFAULTS_MODE
- variabel lingkunganaws.defaultsMode
- properti JVM sistem: 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 AWS SDKpengaturan memiliki nilai yang ditetapkan secara eksplisit, maka nilai itu selalu diutamakan. Jika AWS SDKpengaturan tidak memiliki nilai yang ditetapkan secara eksplisit, dan
defaults_mode
tidak sama dengan warisan, maka fitur ini dapat memberikan nilai default yang berbeda untuk berbagai pengaturan yang dioptimalkan untuk aplikasi Anda. Pengaturan dapat mencakup hal berikut: pengaturan HTTP komunikasi, perilaku coba lagi, pengaturan titik akhir Regional layanan, dan, berpotensi, konfigurasi SDK terkait apa pun. Pelanggan yang menggunakan fitur ini bisa mendapatkan default konfigurasi baru yang disesuaikan dengan skenario penggunaan umum. Jika Andadefaults_mode
tidak sama denganlegacy
, sebaiknya lakukan pengujian aplikasi saat Anda memutakhirkanSDK, karena nilai default yang diberikan mungkin berubah seiring dengan perkembangan praktik terbaik.Nilai default:
legacy
Catatan: Versi utama baru SDKs akan default ke
standard
.Nilai yang valid:
-
legacy
— Menyediakan pengaturan default yang bervariasi menurut SDK dan ada sebelum pembentukandefaults_mode
. -
standard
— Memberikan nilai default terbaru yang direkomendasikan yang harus aman untuk dijalankan di sebagian besar skenario. -
in-region
— Dibangun pada mode standar dan termasuk pengoptimalan yang disesuaikan untuk aplikasi yang memanggil Layanan AWS dari dalam yang sama Wilayah AWS. -
cross-region
— Dibangun pada mode standar dan termasuk pengoptimalan yang disesuaikan untuk aplikasi yang memanggil Layanan AWS di daerah yang berbeda. -
mobile
— Dibangun pada mode standar dan termasuk pengoptimalan yang disesuaikan untuk aplikasi seluler. -
auto
— Dibangun pada mode standar dan termasuk fitur eksperimental. SDKUpaya untuk 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,standard
mode digunakan. Deteksi otomatis mungkin menanyakan metadata instance, yang mungkin memperkenalkan latensi. Jika latensi startup sangat penting untuk aplikasi Anda, sebaiknya pilih yang eksplisitdefaults_mode
.
Contoh pengaturan nilai ini dalam
config
file:[default]
defaults_mode
= standardParameter berikut dapat dioptimalkan berdasarkan pemilihan
defaults_mode
:-
retryMode
— Menentukan bagaimana SDK upaya mencoba lagi. Lihat Coba lagi perilaku. -
stsRegionalEndpoints
- Menentukan bagaimana SDK menentukan Layanan AWS titik akhir yang digunakannya untuk berbicara dengan AWS Security Token Service (AWS STS). LihatAWS STS Titik akhir Regional. -
s3UsEast1RegionalEndpoints
- Menentukan bagaimana SDK menentukan AWS titik akhir layanan yang digunakannya untuk berbicara dengan Amazon S3 untukus-east-1
Wilayah tersebut. -
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 maksimum waktu yang dapat diambil oleh TLS jabat tangan dari saat CLIENT HELLO pesan dikirim ke waktu klien dan server telah sepenuhnya menegosiasikan sandi 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 sewaktu-waktu):
Parameter | standard modus |
in-region modus |
cross-region modus |
mobile modus |
---|---|---|---|---|
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).
Kompatibilitas dengan AWS SDKs
Berikut ini SDKs mendukung fitur dan pengaturan yang dijelaskan dalam topik ini. Setiap pengecualian sebagian dicatat. Pengaturan properti JVM sistem apa pun didukung oleh AWS SDK for Java dan AWS SDK for Kotlin hanya.
SDK | Didukung | Catatan atau informasi lebih lanjut |
---|---|---|
AWS CLI v2 | Tidak | |
SDKuntuk C ++ | Ya | Parameter tidak dioptimalkan:stsRegionalEndpoints ,s3UsEast1RegionalEndpoints ,tlsNegotiationTimeoutInMillis . |
SDKuntuk Go V2 (1.x) |
Ya | Parameter tidak dioptimalkan:retryMode ,stsRegionalEndpoints ,s3UsEast1RegionalEndpoints . |
SDKuntuk Go 1.x (V1) | Tidak | |
SDKuntuk Java 2.x | Ya | Parameter tidak dioptimalkan:stsRegionalEndpoints . |
SDKuntuk Java 1.x | Tidak | |
SDKuntuk JavaScript 3.x | Ya | Parameter tidak dioptimalkan:stsRegionalEndpoints ,s3UsEast1RegionalEndpoints ,tlsNegotiationTimeoutInMillis . connectTimeoutInMillis disebutconnectionTimeout . |
SDKuntuk JavaScript 2.x | Tidak | |
SDKuntuk Kotlin | Tidak | |
SDKuntuk. NET3.x | Ya | Parameter tidak dioptimalkan:connectTimeoutInMillis ,tlsNegotiationTimeoutInMillis . |
SDKuntuk PHP 3.x | Ya | Parameter tidak dioptimalkan:tlsNegotiationTimeoutInMillis . |
SDKuntuk Python (Boto3) |
Ya | Parameter tidak dioptimalkan:tlsNegotiationTimeoutInMillis . |
SDKuntuk Ruby 3.x | Ya | |
SDKuntuk Rust | Tidak | |
SDKuntuk Swift | Tidak | |
Alat untuk PowerShell | Ya | Parameter tidak dioptimalkan:connectTimeoutInMillis ,tlsNegotiationTimeoutInMillis . |