Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Configurazione dei client di servizio per l'esterno AWS SDK for Java 2.x
Molte impostazioni di configurazione possono essere gestite al di fuori del codice. Quando gestite la configurazione esternamente, questa può essere applicata a tutte le applicazioni nello stesso processo Java. La maggior parte delle impostazioni di configurazione può essere impostata come variabili di ambiente, proprietà del sistema JVM o in un file condiviso separato. AWS config
Il config
file condiviso può mantenere set di impostazioni separati, chiamati profili, per fornire configurazioni diverse per ambienti o test diversi.
La maggior parte delle variabili di ambiente e delle impostazioni dei config
file condivisi sono standardizzate e condivise tra strumenti AWS SDKs e strumenti per supportare funzionalità coerenti tra diversi linguaggi di programmazione e applicazioni. Nella maggior parte dei casi, le proprietà del sistema JVM che l'SDK for Java può utilizzare rispecchiano le variabili di ambiente.
Consulta la Guida di riferimento agli strumenti AWS SDKs e scopri come configurare l'applicazione con questi metodi, oltre ai dettagli su ciascuna impostazione cross-sdk. Per visualizzare tutte le impostazioni che l'SDK è in grado di risolvere a partire dalle variabili di ambiente, dalle proprietà del sistema JVM o dai file di configurazione, consulta il riferimento alle impostazioni nella Guida di riferimento agli strumenti e agli strumenti.AWS SDKs
Catena di provider di configurazione per la configurazione del client
L'SDK controlla diverse posizioni (o fonti) per trovare i valori di configurazione.
-
Qualsiasi impostazione esplicita impostata nel codice o su un client di servizio stesso ha la precedenza su qualsiasi altra cosa.
-
Proprietà del sistema JVM
-
Per i dettagli sull'impostazione delle proprietà del sistema JVM, vedere Come impostare le proprietà del sistema JVM nella and Tools Reference Guide.AWS SDKs
-
-
Variabili di ambiente
-
Per i dettagli sull'impostazione delle variabili di ambiente, consulta le variabili di ambiente nella Guida di riferimento agli strumenti AWS SDKs e agli strumenti.
-
Nota che puoi configurare le variabili di ambiente per una shell a diversi livelli di ambito: a livello di sistema, a livello di utente e per una sessione di terminale specifica.
-
-
Condivisi e file
config
credentials
-
Per i dettagli sulla configurazione di questi file, consulta la Guida di riferimento Condivisi
config
AWS SDKs ecredentials
file in and Tools.
-
-
Qualsiasi valore predefinito fornito dal codice sorgente SDK stesso viene utilizzato per ultimo.
-
Alcune proprietà, come Region, non hanno un valore predefinito. È necessario specificarle esplicitamente nel codice, in un'impostazione di ambiente o nel
config
file condiviso. Se l'SDK non è in grado di risolvere la configurazione richiesta, le richieste API possono avere esito negativo in fase di esecuzione.
-
Oltre a questa catena di configurazione generale, l'SDK for Java 2.x utilizza anche catene di provider specializzate, tra cui la catena di fornitori di credenziali e Regione AWS la catena di provider. Queste catene specializzate aggiungono provider aggiuntivi che tengono conto dell'ambiente in cui è in esecuzione l'SDK. Ad esempio, in un contenitore o in un' EC2 istanza.
Crea un client di servizio configurato utilizzando impostazioni esterne
È necessario creare un client di servizio nell'applicazione per parlare con un Servizio AWS. I client di servizio sono il tuo punto di Servizi AWS contatto essenziale con cui gestire tutti i complessi dettagli di comunicazione in modo da non doverti preoccupare di loro. Si occupano automaticamente di attività importanti come la sicurezza, la gestione degli errori e i nuovi tentativi, consentendovi di concentrarvi sulla creazione dell'applicazione piuttosto che sulle complicazioni tecniche.
Usa il metodo create()
Se tutte le impostazioni di configurazione necessarie provengono da fonti esterne, puoi creare un client di servizio con un metodo semplice:
S3Client s3Client = S3Client.create();
Il frammento di codice precedente crea un'S3Client
istanza. Durante la creazione, l'SDK esamina le impostazioni nella catena di provider di configurazione. Una volta che l'SDK trova un valore di impostazione, il valore verrà utilizzato anche se esiste una configurazione successiva nella catena.
Ad esempio, supponiamo che un utente imposti l'impostazione JVM per il Regione AWS impostando la proprietà di sistema. -Daws.region=us-west-2
Se è impostata anche la variabile di AWS_REGION
ambiente, il relativo valore viene ignorato.
Nel processo di creazione verranno utilizzate anche la catena di fornitori di regioni predefinita e la catena di fornitori di credenziali predefinita. In qualche punto della catena, l'SDK deve definire le impostazioni da utilizzare e trovare le impostazioni che gli consentano di recuperare le credenziali per la firma delle richieste. Regione AWS Se i SDKs file riescono a trovare quei valori, la creazione del client fallisce.
Sebbene sia possibile creare un client utilizzando questo pattern di creazione vuoto, in genere si utilizza questo modello quando si desidera aggiungere la configurazione nel codice.
Variabili di ambiente SDK for Java 2.x e proprietà del sistema JVM
Oltre alle impostazioni cross-sdk supportate dalla maggior parte AWS SDKs, l'SDK for Java 2.x fornisce le seguenti impostazioni.
Nota
Queste variabili di ambiente e le proprietà del sistema JVM sono destinate principalmente a casi d'uso avanzati, test o scenari di distribuzione specifici. Nella maggior parte del codice applicativo, è preferibile utilizzare le opzioni di configurazione programmatica fornite dai client builder dell'SDK per una maggiore sicurezza dei tipi e un supporto IDE migliori.
Variabili di ambiente del provider di credenziali di contenitore
Oltre alle variabili di ambiente standard per le credenziali dei container documentate nella guida di riferimento, l'SDK supporta anche:
AWS_CONTAINER_SERVICE_ENDPOINT
—Questa variabile di ambiente specifica l'endpoint per il servizio di metadati del contenitore quando si utilizza il provider di credenziali del contenitore.
Proprietà del sistema Java: aws.containerServiceEndpoint
Valore predefinito: http://169.254.170.2
Variabili di ambiente di implementazione del client HTTP
SYNC_HTTP_SERVICE_IMPL
: identifica in modo esplicito l'implementazione HTTP sincrona predefinita che verrà utilizzata dall'SDK. Ciò è utile quando sono presenti più implementazioni sul classpath o per ottimizzare le prestazioni, poiché la scoperta dell'implementazione richiede la scansione del classpath.
Proprietà del sistema Java: software.amazon.awssdk.http.service.impl
ASYNC_HTTP_SERVICE_IMPL
: identifica in modo esplicito l'implementazione HTTP asincrona predefinita che verrà utilizzata dall'SDK. Ciò è utile quando sono presenti più implementazioni sul classpath o per ottimizzare le prestazioni, poiché la scoperta dell'implementazione richiede la scansione del classpath.
Proprietà del sistema Java: software.amazon.awssdk.http.async.service.impl