翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
スマート設定デフォルト
スマート設定のデフォルト機能を使用すると、 AWS SDKs は他の設定に事前定義された最適化されたデフォルト値を提供できます。
この機能を設定するには、以下のように使用します。
defaults_mode
- 共有 AWSconfig
ファイル設定AWS_DEFAULTS_MODE
- 環境変数aws.defaultsMode
- JVMシステムプロパティ: Java/Kotlin のみ-
この設定では、アプリケーションアーキテクチャに合ったモードを選択できます。これにより、アプリケーションに最適なデフォルト値が使用できるようになります。 AWS SDK 設定に値が明示的に設定されている場合、その値は常に優先されます。 AWS SDK 設定に明示的に値が設定されておらず、レガシーと等しくない場合、この機能
defaults_mode
はアプリケーションに最適化されたさまざまな設定に対して異なるデフォルト値を提供することができます。設定には、HTTP通信設定、再試行動作、サービスリージョンエンドポイント設定、および場合によっては SDK関連の設定が含まれます。この機能を使用するお客様は、一般的な使用シナリオに合わせた新しいデフォルト設定を取得できます。defaults_mode
が と等しくない場合はlegacy
、 をアップグレードするときにアプリケーションのテストを実行することをお勧めします。これはSDK、ベストプラクティスが進化するにつれて、提供されるデフォルト値が変わる可能性があるためです。デフォルト値:
legacy
注: の新しいメジャーバージョンSDKsはデフォルトで になります
standard
。有効値:
-
legacy
– の確立前に存在SDKしていた および によって異なるデフォルト設定を提供しますdefaults_mode
。 -
standard
– ほとんどのシナリオで安全に実行できる最新の推奨デフォルト値を使用します。 -
in-region
– 標準モードに基づいて構築され、同じ 内 AWS サービス から を呼び出すアプリケーションに合わせた最適化が含まれています AWS リージョン。 -
cross-region
– 標準モードに基づいて構築され、別のリージョン AWS サービス で を呼び出すアプリケーションに合わせた最適化が含まれています。 -
mobile
– 標準モードに基づいて構築されており、モバイルアプリケーションに合わせた最適化が含まれています。 -
auto
– 標準モードに基づいて構築されており、実験的な機能が含まれています。はランタイム環境を検出して、適切な設定を自動的に決定SDKしようとします。自動検出はヒューリスティックに基づいてあり、100% の精度は得られません。ランタイム環境を特定できない場合は、standard
モードが使用されます。自動検出はインスタンスメタデータ をクエリし、レイテンシーが発生する可能性があります。起動時のレイテンシーがアプリケーションにとって最重要な場合は、代わりに明示的なdefaults_mode
を選択することをおすすめします。
config
ファイルにこの値を設定する例を以下に示します。[default]
defaults_mode
= standard以下のパラメータは、
defaults_mode
の選択に基づいて最適化される可能性があります。-
retryMode
– SDK試行の再試行方法を指定します。再試行動作 を参照してください。 -
stsRegionalEndpoints
– が AWS Security Token Service () との通信に使用する AWS サービス エンドポイントSDKを決定する方法を指定しますAWS STS。AWS STS リージョン化されたエンドポイント を参照してください。 -
s3UsEast1RegionalEndpoints
–us-east-1
がリージョンの Amazon S3 と通信するために使用する AWS サービスエンドポイントSDKを決定する方法を指定します。 -
connectTimeoutInMillis
– ソケットで初めて接続を試みた後、タイムアウトするまでの時間。クライアントが接続ハンドシェイクの完了を受け取らない場合、クライアントは断念しオペレーションは失敗します。 -
tlsNegotiationTimeoutInMillis
– TLSハンドシェイクがCLIENTHELLOメッセージの送信からクライアントとサーバーが完全に暗号をネゴシエートし、キーを交換するまでにかかる最大時間。
-
各設定のデフォルト値は、アプリケーションで選択した defaults_mode
によって異なります。これらの値は、現在以下のように設定されています(変更される可能性があります)。
パラメータ | standard モード |
in-region モード |
cross-region モード |
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 |
たとえば、選択した defaults_mode
が standard
の場合、standard
の値が(有効な retry_mode
オプションから)retry_mode
に割り当てられ、regional
の値が(有効な stsRegionalEndpoints
オプションから)stsRegionalEndpoints
に割り当てられます。
との互換性 AWS SDKs
このトピックで説明されている機能と設定SDKsを以下に示します。部分的な例外があれば、すべて記載されています。JVM システムプロパティ設定は、 AWS SDK for Java と AWS SDK for Kotlin のみでサポートされます。
SDK | サポート | 注意または詳細情報 |
---|---|---|
AWS CLI v2 | なし | |
SDK C++ 用 | あり | 最適化されていないパラメーター:stsRegionalEndpoints 、s3UsEast1RegionalEndpoints 、tlsNegotiationTimeoutInMillis 。 |
SDK Go V2 用 (1.x) |
あり | 最適化されていないパラメーター:retryMode 、stsRegionalEndpoints 、s3UsEast1RegionalEndpoints 。 |
SDK Go 1.x (V1) 用 | なし | |
SDK for Java 2.x | あり | 最適化されていないパラメーター:stsRegionalEndpoints 。 |
SDK for Java 1.x | なし | |
SDK JavaScript 3.x 用 | あり | 最適化されていないパラメーター:stsRegionalEndpoints 、s3UsEast1RegionalEndpoints 、tlsNegotiationTimeoutInMillis 。connectTimeoutInMillis は connectionTimeout と呼ばれます。 |
SDK JavaScript 2.x 用 | なし | |
SDK Kotlin 用 | なし | |
SDK の 。NET 3.x | あり | 最適化されていないパラメーター:connectTimeoutInMillis 、tlsNegotiationTimeoutInMillis 。 |
SDK 3.x PHP 用 | あり | 最適化されていないパラメーター:tlsNegotiationTimeoutInMillis 。 |
SDK for Python (Boto3) |
あり | 最適化されていないパラメーター:tlsNegotiationTimeoutInMillis 。 |
SDK Ruby 3.x 用 | あり | |
SDK Rust 用 | なし | |
のツール PowerShell | あり | 最適化されていないパラメーター:connectTimeoutInMillis 、tlsNegotiationTimeoutInMillis 。 |