As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Padrões de configuração inteligente
nota
Para obter ajuda na compreensão do layout das páginas de configurações ou na interpretação da tabela Support by AWS SDKs e ferramentas a seguir, consulte. Entender as páginas de configurações deste guia
Com o recurso de padrões de configuração inteligente, os AWS SDKs podem fornecer valores padrão predefinidos e otimizados para outras configurações.
Configure essa funcionalidade usando o seguinte:
defaults_mode- configuração de AWSconfigarquivo compartilhadoAWS_DEFAULTS_MODE: variável de ambienteaws.defaultsMode- Propriedade do sistema JVM: somente Java/Kotlin-
Com essa configuração, você pode escolher um modo que se alinhe à arquitetura do aplicativo e, em seguida, forneça valores padrão otimizados para o aplicativo. Se uma configuração do AWS SDK tiver um valor definido explicitamente, esse valor sempre terá precedência. Se uma configuração do AWS SDK não tiver um valor definido explicitamente e não
defaults_modefor igual ao legado, esse recurso poderá fornecer valores padrão diferentes para várias configurações otimizadas para seu aplicativo. As configurações podem incluir o seguinte: configurações de comunicação HTTP, comportamento de nova tentativa, configurações de endpoint regional do serviço e, potencialmente, qualquer SDK-related configuração. Os clientes que usam esse atributo podem obter novos padrões de configuração personalizados para cenários de uso comuns. Se seudefaults_modenão for igual alegacy, recomendamos realizar testes de seu aplicativo ao atualizar o SDK, pois os valores padrão fornecidos podem mudar à medida que as melhores práticas evoluem.Valor padrão:
legacyObservação: as novas versões principais dos SDKs usarão como padrão de
standard.Valores válidos:
-
legacy: fornece configurações padrão que variam de acordo com o SDK e existiam antes do estabelecimento dodefaults_mode. -
standard: fornece os valores padrão recomendados mais recentes que devem ser executados com segurança na maioria dos cenários. -
in-region— Baseia-se no modo padrão e inclui otimização personalizada para aplicativos que ligam Serviços da AWS de dentro do mesmo. Região da AWS -
cross-region— Baseia-se no modo padrão e inclui otimização personalizada para aplicativos que fazem chamadas Serviços da AWS em uma região diferente. -
mobile: baseia-se no modo padrão e inclui otimização personalizada para aplicativos móveis. -
auto: baseia-se no modo padrão e inclui atributos experimentais. O SDK tenta descobrir o ambiente de runtime para determinar automaticamente as configurações apropriadas. A detecção automática é baseada em heurísticas e não fornece 100% de precisão. Se o ambiente de runtime não puder ser determinado, o modostandardserá usado. A detecção automática pode consultar os metadados da instância, o que pode introduzir latência. Se a latência de inicialização for fundamental para seu aplicativo, recomendamos escolher umdefaults_modeexplícito.
Exemplo de configuração desse valor no arquivo
config:[default]defaults_mode= standardOs parâmetros a seguir podem ser otimizados com base na seleção de
defaults_mode:-
retryMode: especifica como o SDK tenta novas tentativas. Consulte Comportamento de repetição. -
stsRegionalEndpoints— Especifica como o SDK determina o AWS service (Serviço da AWS) endpoint que ele usa para se comunicar com o AWS Security Token Service ().AWS STS Consulte AWS STS Endpoints regionais do. -
s3UsEast1RegionalEndpoints— Especifica como o SDK determina o endpoint AWS de serviço que ele usa para se comunicar com o Amazon S3 da região.us-east-1 -
connectTimeoutInMillis: depois de fazer uma tentativa inicial de conexão em um soquete, a quantidade de tempo antes do tempo limite. Se o cliente não receber a conclusão do handshake de conexão, ele desiste e falhará na operação. -
tlsNegotiationTimeoutInMillis: o tempo máximo que um handshake TLS pode levar desde o momento em que a mensagem CLIENT HELLO é enviada até o momento em que o cliente e o servidor negociaram totalmente as cifras e trocaram as chaves.
-
O valor padrão para cada configuração muda dependendo da defaults_mode selecionada para seu aplicativo. Atualmente, esses valores são definidos da seguinte forma (sujeitos a alterações):
| Parâmetro | Modo standard |
Modo in-region |
Modo cross-region |
Modo 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 |
Por exemplo, se o defaults_mode que você selecionou fosse standard, o valor de standard seria atribuído a retry_mode (das opções retry_mode válidas) e o valor de regional seria atribuído a stsRegionalEndpoints (das opções stsRegionalEndpoints válidas).
Apoio de AWS SDKs e ferramentas
Os SDKs a seguir são compatíveis com os recursos e configurações descritos neste tópico. Quaisquer exceções parciais estão anotadas. Qualquer configuração de propriedade do sistema JVM é suportada somente pelo AWS SDK para Java e pelo AWS SDK para Kotlin .
| SDK | Compatível | Notas ou mais informações |
|---|---|---|
| AWS CLI v2 | Não | |
| SDK para C++ | Sim | Parâmetros não otimizados:stsRegionalEndpoints, s3UsEast1RegionalEndpoints, tlsNegotiationTimeoutInMillis. |
| SDK para Go V2 (1.x) | Sim | Parâmetros não otimizados:retryMode, stsRegionalEndpoints, s3UsEast1RegionalEndpoints. |
| SDK para Go 1.x (V1) | Não | |
| SDK para Java 2.x | Sim | Parâmetros não otimizados: stsRegionalEndpoints. |
| SDK para Java 1.x | Não | |
| SDK para 3.x JavaScript | Sim | Parâmetros não otimizados:stsRegionalEndpoints, s3UsEast1RegionalEndpoints, tlsNegotiationTimeoutInMillis. connectTimeoutInMillis é chamado connectionTimeout. |
| SDK para 2.x JavaScript | Não | |
| SDK para Kotlin | Não | |
| SDK para .NET 4.x | Sim | Parâmetros não otimizados: connectTimeoutInMillis, tlsNegotiationTimeoutInMillis. |
| SDK para .NET 3.x | Sim | Parâmetros não otimizados: connectTimeoutInMillis, tlsNegotiationTimeoutInMillis. |
| SDK para PHP 3.x | Sim | Parâmetros não otimizados: tlsNegotiationTimeoutInMillis. |
| SDK para Python (Boto3) | Sim | Parâmetros não otimizados: tlsNegotiationTimeoutInMillis. |
| SDK para Ruby 3.x | Sim | |
| SDK para Rust | Não | |
| SDK para Swift | Não | |
| Ferramentas para PowerShell V5 | Sim | Parâmetros não otimizados: connectTimeoutInMillis, tlsNegotiationTimeoutInMillis. |
| Ferramentas para PowerShell V4 | Sim | Parâmetros não otimizados: connectTimeoutInMillis, tlsNegotiationTimeoutInMillis. |