Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Konfiguration von Service-Clients für den AWS SDK for Java 2.x externen
Viele Konfigurationseinstellungen können außerhalb Ihres Codes bearbeitet werden. Wenn Sie die Konfiguration extern vornehmen, kann sie für alle Ihre Anwendungen im selben Java-Prozess gelten. Die meisten Konfigurationseinstellungen können entweder als Umgebungsvariablen, JVM-Systemeigenschaften oder in einer separaten gemeinsam genutzten AWS config
Datei festgelegt werden. Die gemeinsam genutzte config
Datei kann separate Einstellungssätze, sogenannte Profile, enthalten, um unterschiedliche Konfigurationen für verschiedene Umgebungen oder Tests bereitzustellen.
Die meisten Umgebungsvariablen und gemeinsam genutzten config
Dateieinstellungen sind standardisiert und werden von allen AWS SDKs Tools gemeinsam genutzt, um konsistente Funktionen in verschiedenen Programmiersprachen und Anwendungen zu unterstützen. In den meisten Fällen spiegeln die JVM-Systemeigenschaften, die das SDK for Java verwenden kann, die Umgebungsvariablen wider.
Weitere Informationen zur Konfiguration Ihrer Anwendung mithilfe dieser Methoden AWS SDKs sowie Einzelheiten zu den einzelnen SDK-übergreifenden Einstellungen finden Sie im Referenzhandbuch und im Tools-Referenzhandbuch. Alle Einstellungen, die das SDK anhand der Umgebungsvariablen, der JVM-Systemeigenschaften oder der Konfigurationsdateien auflösen kann, finden Sie in der Einstellungsreferenz im Referenzhandbuch AWS SDKs und im Tools-Referenzhandbuch.
Kette von Konfigurationsanbietern für die Client-Konfiguration
Das SDK sucht an mehreren Stellen (oder Quellen) nach Konfigurationswerten.
-
Jede explizite Einstellung, die im Code oder auf einem Service-Client selbst festgelegt ist, hat Vorrang vor allen anderen Einstellungen.
-
JVM-Systemeigenschaften
-
Einzelheiten zur Einstellung der JVM-Systemeigenschaften finden Sie unter So legen Sie JVM-Systemeigenschaften fest im Referenzhandbuch AWS SDKs und im Tools-Referenzhandbuch.
-
-
Umgebungsvariablen
-
Einzelheiten zur Einstellung von Umgebungsvariablen finden Sie unter Umgebungsvariablen im Referenzhandbuch AWS SDKs und im Tools-Referenzhandbuch.
-
Beachten Sie, dass Sie Umgebungsvariablen für eine Shell auf verschiedenen Gültigkeitsebenen konfigurieren können: systemweit, benutzerweit und für eine bestimmte Terminalsitzung.
-
-
Geteilte Dateien und Dateien
config
credentials
-
Einzelheiten zum Einrichten dieser Dateien finden Sie im Referenzhandbuch „Gemeinsam genutzte
config
credentials
Dateien“AWS SDKs und „Tools“.
-
-
Jeder vom SDK-Quellcode selbst bereitgestellte Standardwert wird zuletzt verwendet.
-
Für einige Eigenschaften, z. B. Region, gibt es keine Standardeinstellung. Sie müssen sie entweder explizit im Code, in einer Umgebungseinstellung oder in der gemeinsam genutzten
config
Datei angeben. Wenn das SDK die erforderliche Konfiguration nicht auflösen kann, können API-Anfragen zur Laufzeit fehlschlagen.
-
Neben dieser allgemeinen Konfigurationskette verwendet das SDK for Java 2.x auch spezialisierte Anbieterketten, darunter die Credentials Provider Chain und die AWS-Region Provider Chain. Diese spezialisierten Ketten fügen zusätzliche Anbieter hinzu, die die Umgebung berücksichtigen, in der das SDK ausgeführt wird. Zum Beispiel in einem Container oder einer EC2 Instanz.
Erstellen Sie einen Service-Client, der mit externen Einstellungen konfiguriert wurde
Sie müssen in Ihrer Anwendung einen Service-Client erstellen, um mit einem zu kommunizieren AWS-Service. Serviceclients sind Ihre wichtigste Verbindung zu AWS-Services ihnen. Sie kümmern sich um alle komplexen Kommunikationsdetails, sodass Sie sich keine Gedanken über sie machen müssen. Sie kümmern sich automatisch um wichtige Aufgaben wie Sicherheit, Fehlerbehandlung und Wiederholungen, sodass Sie sich auf die Erstellung Ihrer Anwendung konzentrieren können, anstatt sich um technische Komplikationen zu kümmern.
Verwenden Sie die Methode create()
Wenn alle benötigten Konfigurationseinstellungen aus externen Quellen stammen, können Sie mit einer einfachen Methode einen Service-Client erstellen:
S3Client s3Client = S3Client.create();
Der vorherige Codeausschnitt erstellt eine InstanzS3Client
. Während der Erstellung durchsucht das SDK die Kette der Konfigurationsanbieter nach Einstellungen. Sobald das SDK einen Einstellungswert gefunden hat, wird der Wert auch dann verwendet, wenn eine Konfiguration existiert, die sich später in der Kette befindet.
Nehmen wir beispielsweise an, ein Benutzer legt die JVM-Einstellung für fest, AWS-Region indem er die Systemeigenschaft -Daws.region=us-west-2
festlegt. Wenn die AWS_REGION
Umgebungsvariable ebenfalls gesetzt ist, wird ihr Wert ignoriert.
Die standardmäßige Anbieterkette für Regionen und die Anbieterkette für Standardanmeldedaten werden ebenfalls im Erstellungsprozess verwendet. Irgendwo in der Kette muss das SDK die AWS-Region zu verwendenden Einstellungen auflösen und Einstellungen finden, die es ermöglichen, Anmeldeinformationen für Signieranfragen abzurufen. Wenn die SDKs Dateien diese Werte finden, schlägt die Client-Erstellung fehl.
Sie können zwar mit diesem leeren Builder-Muster einen Client erstellen, aber Sie verwenden dieses Muster in der Regel, wenn Sie dem Code eine Konfiguration hinzufügen möchten.
SDK for Java 2.x-Umgebungsvariablen und JVM-Systemeigenschaften
Neben den SDK-übergreifenden Einstellungen, die von den meisten unterstützt werden AWS SDKs, bietet das SDK for Java 2.x die folgenden Einstellungen.
Anmerkung
Diese Umgebungsvariablen und JVM-Systemeigenschaften sind in erster Linie für erweiterte Anwendungsfälle, Tests oder spezifische Bereitstellungsszenarien vorgesehen. In den meisten Anwendungscodes ist es vorzuziehen, die programmatischen Konfigurationsoptionen zu verwenden, die von den Client-Buildern des SDK bereitgestellt werden, um die Typsicherheit und IDE-Unterstützung zu verbessern.
Umgebungsvariablen des Container-Anmeldeinformationsanbieters
Zusätzlich zu den im Referenzhandbuch dokumentierten Standard-Umgebungsvariablen für Container-Anmeldeinformationen unterstützt das SDK auch:
AWS_CONTAINER_SERVICE_ENDPOINT
— Diese Umgebungsvariable gibt den Endpunkt für den Container-Metadatendienst an, wenn der Anbieter für Container-Anmeldeinformationen verwendet wird.
Java-Systemeigenschaft: aws.containerServiceEndpoint
Standardwert: http://169.254.170.2
Umgebungsvariablen für die Implementierung des HTTP-Clients
SYNC_HTTP_SERVICE_IMPL
— Identifiziert explizit die standardmäßige synchrone HTTP-Implementierung, die das SDK verwenden wird. Dies ist nützlich, wenn der Klassenpfad mehrere Implementierungen enthält, oder zur Leistungsoptimierung, da für die Implementierungserkennung ein Scannen des Klassenpfads erforderlich ist.
Java-Systemeigenschaft: software.amazon.awssdk.http.service.impl
ASYNC_HTTP_SERVICE_IMPL
— Identifiziert explizit die standardmäßige asynchrone HTTP-Implementierung, die das SDK verwenden wird. Dies ist nützlich, wenn der Klassenpfad mehrere Implementierungen enthält, oder zur Leistungsoptimierung, da für die Implementierungserkennung ein Scannen des Klassenpfads erforderlich ist.
Java-Systemeigenschaft: software.amazon.awssdk.http.async.service.impl