

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# スマート設定デフォルト
<a name="feature-smart-config-defaults"></a>

**注記**  
設定ページのレイアウトの理解、または以下の ** AWS SDKs**「」を参照してください[このガイドの設定ページについて](settings-reference.md#settingsPages)。

スマート設定のデフォルト機能を使用すると、 AWS SDKs他の設定用に事前定義された最適化されたデフォルト値を提供できます。

この機能を設定するには、以下のように使用します。

**`defaults_mode` - 共有 AWS `config`ファイル設定`AWS_DEFAULTS_MODE` - 環境変数`aws.defaultsMode` - JVM システムプロパティ: Java/Kotlin のみ**  
この設定では、アプリケーションアーキテクチャに合ったモードを選択できます。これにより、アプリケーションに最適なデフォルト値が使用できるようになります。 AWS SDK 設定に値が明示的に設定されている場合、その値は常に優先されます。 AWS SDK 設定に値が明示的に設定されておらず、レガシーと等しくない場合、この機能`defaults_mode`はアプリケーションに最適化されたさまざまな設定に異なるデフォルト値を提供することができます。設定には、HTTP 通信設定、再試行動作、サービスの地域エンドポイント設定、および SDK 関連のあらゆる設定が含まれる可能性があります。この機能を使用するお客様は、一般的な使用シナリオに合わせた新しいデフォルト設定を取得できます。`defaults_mode` が `legacy` と等しくない場合は、SDK をアップグレードするときにアプリケーションのテストを行うことをおすすめします。これは、ベストプラクティスの進化によってこの機能のデフォルト値が変わる可能性があるためです。  
**デフォルト値**: `legacy`  
注意：SDK の新しいメジャーバージョンでのデフォルトは `standard` になります。  
**有効な値:**  
+ `legacy` – SDK によって異なり、`defaults_mode` が確立される前から存在していたデフォルト設定を使用します。
+ `standard` – ほとんどのシナリオで安全に実行できる最新の推奨デフォルト値を使用します。
+ `in-region` – 標準モード上に構築され、同じ 内 AWS のサービス から を呼び出すアプリケーションに合わせた最適化が含まれています AWS リージョン。
+ `cross-region` – 標準モード上に構築され、別のリージョン AWS のサービス で を呼び出すアプリケーション向けにカスタマイズされた最適化が含まれています。
+ `mobile` – 標準モードに基づいて構築されており、モバイルアプリケーションに合わせた最適化が含まれています。
+ `auto` – 標準モードに基づいて構築されており、実験的な機能が含まれています。SDK はランタイム環境を検出して適切な設定を自動的に決定しようとします。自動検出はヒューリスティックに基づいてあり、100% の精度は得られません。ランタイム環境を特定できない場合は、`standard` モードが使用されます。自動検出では、[インスタンスのメタデータ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html)をクエリすることがあり、レイテンシーが発生する可能性があります。起動時のレイテンシーがアプリケーションにとって最重要な場合は、代わりに明示的な `defaults_mode` を選択することをおすすめします。
 `config` ファイルにこの値を設定する例を以下に示します。  

```
[default]
defaults_mode = standard
```
以下のパラメータは、`defaults_mode` の選択に基づいて最適化される可能性があります。  
+ `retryMode` – SDK が再試行を試みる方法を指定します。「[再試行動作](feature-retry-behavior.md)」を参照してください。
+ `stsRegionalEndpoints` – SDK が AWS Security Token Service () との通信に使用する AWS のサービス エンドポイントを決定する方法を指定しますAWS STS。「[AWS STS リージョンエンドポイント](feature-sts-regionalized-endpoints.md)」を参照してください。
+ `s3UsEast1RegionalEndpoints` – SDK が`us-east-1`リージョンの Amazon S3 と通信するために使用する AWS サービスエンドポイントを決定する方法を指定します。
+ `connectTimeoutInMillis` – ソケットで初めて接続を試みた後、タイムアウトするまでの時間。クライアントが接続ハンドシェイクの完了を受け取らない場合、クライアントは断念しオペレーションは失敗します。
+ `tlsNegotiationTimeoutInMillis` – CLIENT HELLO メッセージが送信されてから、クライアントとサーバーが暗号を完全にネゴシエートしてキーを交換するまでの TLS ハンドシェイクにかかる最大時間。

各設定のデフォルト値は、アプリケーションで選択した `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とツールによるサポート
<a name="feature-smart-config-defaults-sdk-compat"></a>

以下の SDK は、このトピックで説明する機能と設定をサポートします。部分的な例外があれば、すべて記載されています。JVM システムプロパティ設定は、 AWS SDK for Java と AWS SDK for Kotlin でのみサポートされます。


| SDK | サポート | 注意または詳細情報 | 
| --- | --- | --- | 
| [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/) v2 | いいえ |  | 
| [SDK for C\+\+](https://docs.aws.amazon.com/sdk-for-cpp/latest/developer-guide/) |  はい | 最適化されていないパラメーター：stsRegionalEndpoints、s3UsEast1RegionalEndpoints、tlsNegotiationTimeoutInMillis。 | 
| [SDK for Go V2 (1.x)](https://docs.aws.amazon.com/sdk-for-go/v2/developer-guide/) | はい | 最適化されていないパラメーター：retryMode、stsRegionalEndpoints、s3UsEast1RegionalEndpoints。 | 
| [SDK for Go 1.x (V1)](https://docs.aws.amazon.com/sdk-for-go/latest/developer-guide/) | いいえ |  | 
| [SDK for Java 2.x](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/) | はい | 最適化されていないパラメーター：stsRegionalEndpoints。 | 
| [SDK for Java 1.x](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/) | いいえ |  | 
| [SDK for JavaScript 3.x](https://docs.aws.amazon.com/sdk-for-javascript/latest/developer-guide/) | はい | 最適化されていないパラメーター：stsRegionalEndpoints、s3UsEast1RegionalEndpoints、tlsNegotiationTimeoutInMillis。connectTimeoutInMillis は connectionTimeout と呼ばれます。 | 
| [SDK for JavaScript 2.x](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/) | いいえ |  | 
| [SDK for Kotlin](https://docs.aws.amazon.com/sdk-for-kotlin/latest/developer-guide/) | いいえ |  | 
| [SDK for .NET 4.x](https://docs.aws.amazon.com/sdk-for-net/latest/developer-guide/) | はい | 最適化されていないパラメーター：connectTimeoutInMillis、tlsNegotiationTimeoutInMillis。 | 
| [SDK for .NET 3.x](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/) | はい | 最適化されていないパラメーター：connectTimeoutInMillis、tlsNegotiationTimeoutInMillis。 | 
| [SDK for PHP 3.x](https://docs.aws.amazon.com/sdk-for-php/latest/developer-guide/) | はい | 最適化されていないパラメーター：tlsNegotiationTimeoutInMillis。 | 
| [SDK for Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html) | はい | 最適化されていないパラメーター：tlsNegotiationTimeoutInMillis。 | 
| [SDK for Ruby 3.x](https://docs.aws.amazon.com/sdk-for-ruby/latest/developer-guide/) | はい |   | 
| [SDK for Rust](https://docs.aws.amazon.com/sdk-for-rust/latest/dg/) | いいえ |  | 
| [SDK for Swift](https://docs.aws.amazon.com/sdk-for-swift/latest/developer-guide/) | いいえ |  | 
| [PowerShell V5 用のツール](https://docs.aws.amazon.com/powershell/latest/userguide/) | はい | 最適化されていないパラメーター：connectTimeoutInMillis、tlsNegotiationTimeoutInMillis。 | 
| [PowerShell V4 のツール](https://docs.aws.amazon.com/powershell/v4/userguide/) | はい | 最適化されていないパラメーター：connectTimeoutInMillis、tlsNegotiationTimeoutInMillis。 | 