Configuration de client - AWS SDK for Java 1. x

Nous avons annoncé la sortie prochaine end-of-support de AWS SDK for Java (v1). Nous vous recommandons de migrer vers la AWS SDK for Java version v2. Pour les dates, les détails supplémentaires et les informations sur la façon de migrer, reportez-vous à l'annonce associée.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Configuration de client

AWS SDK for Java Cela vous permet de modifier la configuration par défaut du client, ce qui est utile lorsque vous souhaitez :

  • Se connecter à Internet via un proxy

  • Modifier les paramètres de transport HTTP, tels que le délai de connexion et les nouvelles tentatives de demande

  • Spécifier des conseils sur la taille de la mémoire tampon du socket TCP

Configuration de proxy

Lorsque vous créez un objet client, vous pouvez transmettre un ClientConfigurationobjet facultatif pour personnaliser la configuration du client.

Si vous vous connectez à Internet via un serveur proxy, vous devez configurer les paramètres du serveur proxy (hôte proxy, port et nom d'utilisateur/mot de passe) via l'objet ClientConfiguration.

Configuration du transport HTTP

Vous pouvez configurer plusieurs options de transport HTTP à l'aide de l'ClientConfigurationobjet. De nouvelles options sont parfois ajoutées ; pour voir la liste complète des options que vous pouvez récupérer ou définir, consultez la référence de l' AWS SDK for Java API.

Note

Chacune des valeurs configurables possède une valeur par défaut définie par une constante. Pour obtenir la liste des valeurs constantes pourClientConfiguration, consultez la section Valeurs de champ constantes dans la référence de l' AWS SDK for Java API.

Connexions maximales

Vous pouvez définir le nombre maximum autorisé de connexions HTTP ouvertes à l'aide du ClientConfiguration. setMaxConnectionsméthode.

Important

Définissez le nombre maximal de connexions de telle sorte qu'il corresponde au nombre de transactions simultanées. Vous éviterez ainsi des contentions de connexions et une dégradation des performances. Pour connaître la valeur maximale de connexions par défaut, consultez la section Valeurs de champ constantes dans la référence de l' AWS SDK for Java API.

Délais et gestion des erreurs

Vous pouvez définir des options liées aux délais et à la gestion des erreurs avec les connexions HTTP.

  • Délai de connexion

    Le délai de connexion correspond à la durée (en millisecondes) pendant laquelle la connexion HTTP attend pour établir une connexion avant d'abandonner. La valeur par défaut est 10 000 ms.

    Pour définir vous-même cette valeur, utilisez le ClientConfiguration. setConnectionTimeoutméthode.

  • Durée de vie (TTL) de la connexion

    Par défaut, le kit SDK tente de réutiliser les connexions HTTP aussi longtemps que possible. Dans les situations d'échec où une connexion est établie vers un serveur qui a été mis hors service, le fait d'avoir une durée de vie finie peut aider à la récupération de l'application. Par exemple, la définition d'une durée de vie de 15 minutes garantit que, même si vous avez une connexion établie avec un serveur qui rencontre des problèmes, vous rétablirez une connexion à un nouveau serveur dans un délai de 15 minutes.

    Pour définir le TTL de connexion HTTP, utilisez la méthode ClientConfiguration.setConnectionTTL.

  • Nombre maximal de tentatives en cas d'erreur

    Par défaut, le nombre maximal de tentatives en cas d'erreur est de 3. Vous pouvez définir une valeur différente en utilisant le ClientConfiguration. setMaxErrorRéessayer la méthode.

Adresse locale

Pour définir l'adresse locale à laquelle le client HTTP doit se lier, utilisez ClientConfiguration. setLocalAddress.

Conseils sur la taille de la mémoire tampon du socket TCP

Les utilisateurs expérimentés qui souhaitent ajuster les paramètres TCP de bas niveau peuvent également définir des indications sur la taille de la mémoire tampon TCP via l'objet. ClientConfiguration La majorité des utilisateurs n'aura jamais besoin de modifier ces valeurs, mais elles sont fournies pour les utilisateurs avancés.

Les tailles optimales de mémoire tampon TCP d'une application dépendent fortement de la configuration et des capacités du réseau et du système d'exploitation. Par exemple, la plupart des systèmes d'exploitation modernes fournissent une logique de réglage automatique pour les tailles de mémoire tampon de socket TCP. Il peut en résulter un impact important sur les performances des connexions TCP qui sont maintenues ouvertes assez longtemps pour que le réglage automatique optimise les tailles de mémoire tampon.

Les tailles de mémoire tampon élevées (par exemple, 2 Mo) permettent au système d'exploitation de placer en mémoire tampon plus de données sans avoir besoin que le serveur distant accuse réception des informations et peuvent ainsi se révéler particulièrement utiles quand le réseau présente une latence élevée.

Il s'agit uniquement d'un conseil ; il se peut que le système d'exploitation ne le suive pas. Lors de l'utilisation de cette option, les utilisateurs doivent toujours vérifier les valeurs par défaut et les limites configurées du système d'exploitation. La plupart des systèmes d'exploitation ont une taille maximale de mémoire tampon TCP et ne vous permettent pas de dépasser ce seuil, sauf si vous augmentez explicitement la taille maximale de la mémoire tampon TCP.

De nombreuses ressources sont disponibles pour vous aider à configurer les tailles de mémoire tampon TCP et les paramètres TCP spécifiques au système d'exploitation, y compris les éléments suivants :