Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Configuración de clientes de servicio para el AWS SDK for Java 2.x exterior
Muchos ajustes de configuración se pueden gestionar fuera del código. Cuando gestiona la configuración de forma externa, puede aplicarse a todas las aplicaciones en el mismo proceso de Java. La mayoría de los ajustes de configuración se pueden establecer como variables de entorno, propiedades del sistema JVM o en un AWS config
archivo compartido independiente. El config
archivo compartido puede mantener conjuntos de ajustes separados, denominados perfiles, para proporcionar diferentes configuraciones para diferentes entornos o pruebas.
La mayoría de las variables de entorno y la configuración de los config
archivos compartidos están estandarizadas y se comparten entre sí, AWS SDKs y son herramientas que permiten una funcionalidad uniforme en los diferentes lenguajes de programación y aplicaciones. En la mayoría de los casos, las propiedades del sistema JVM que puede usar el SDK para Java reflejan las variables de entorno.
Consulte la guía de referencia de herramientas AWS SDKs y la guía de referencia para obtener información sobre la configuración de la aplicación mediante estos métodos, además de obtener detalles sobre cada configuración de varios SDK. Para ver todos los ajustes que el SDK puede resolver a partir de las variables de entorno, las propiedades del sistema JVM o los archivos de configuración, consulta la referencia sobre los ajustes en la Guía de referencia de herramientas AWS SDKs y herramientas.
Cadena de proveedores de configuración para la configuración de los clientes
El SDK busca valores de configuración en varios lugares (o fuentes).
-
Cualquier ajuste explícito establecido en el código o en el propio cliente de un servicio tiene prioridad sobre cualquier otra cosa.
-
Propiedades del sistema JVM
-
Para obtener más información sobre cómo configurar las propiedades del sistema JVM, consulte Cómo configurar las propiedades del sistema JVM en la Guía de referencia de herramientas AWS SDKs y herramientas.
-
-
Variables de entorno
-
Para obtener más información sobre la configuración de las variables de entorno, consulte las variables de entorno en la Guía de referencia de herramientas AWS SDKs y herramientas.
-
Tenga en cuenta que puede configurar las variables de entorno para un shell en diferentes niveles de alcance: en todo el sistema, en todo el usuario y para una sesión de terminal específica.
-
-
Archivos
config
ycredentials
compartidos-
Para obtener más información sobre la configuración de estos archivos, consulte los
credentials
archivosconfig
Y compartidos de la Guía de referencia de herramientas AWS SDKs y herramientas.
-
-
Los valores predeterminados proporcionados por el propio código fuente del SDK se utilizan en último lugar.
-
Algunas propiedades, como la región, no tienen un valor predeterminado. Debe especificarlas de forma explícita en el código, en una configuración de entorno o en el
config
archivo compartido. Si el SDK no puede resolver la configuración requerida, las solicitudes de API pueden fallar en tiempo de ejecución.
-
Además de esta cadena de configuración general, el SDK para Java 2.x también utiliza cadenas de proveedores especializadas, que incluyen la cadena de proveedores de credenciales y la cadena de Región de AWS proveedores. Estas cadenas especializadas añaden proveedores adicionales que tienen en cuenta el entorno en el que se ejecuta el SDK. Por ejemplo, en un contenedor o una EC2 instancia.
Cree un cliente de servicio configurado con parámetros externos
Debe crear un cliente de servicio en su aplicación para comunicarse con un Servicio de AWS. Los clientes de servicio son su conexión esencial Servicios de AWS, ya que se encargan de todos los detalles complejos de la comunicación para que no tenga que preocuparse por ellos. Se encargan de tareas importantes, como la seguridad y la gestión de errores, y los reintentan automáticamente, lo que le permite centrarse en crear su aplicación en lugar de en ocuparse de las complicaciones técnicas.
Usa el método create()
Si todos los ajustes de configuración que necesita provienen de fuentes externas, puede crear un cliente de servicio con un método sencillo:
S3Client s3Client = S3Client.create();
El fragmento de código anterior crea una S3Client
instancia. Durante la creación, el SDK busca ajustes en la cadena de proveedores de configuración. Una vez que el SDK encuentre un valor de configuración, el valor se utilizará incluso si existe una configuración que se encuentre más adelante en la cadena.
Por ejemplo, supongamos que un usuario establece la configuración de la JVM Región de AWS mediante la configuración de la propiedad -Daws.region=us-west-2
del sistema. Si la variable de AWS_REGION
entorno también está establecida, se ignora su valor.
La cadena de proveedores de regiones predeterminada y la cadena de proveedores de credenciales predeterminada también se utilizarán en el proceso de creación. En algún punto de la cadena, el SDK debe Región de AWS resolver los ajustes de uso y búsqueda que le permitan recuperar las credenciales para las solicitudes de firma. Si los SDKs archivos buscan esos valores, se produce un error al crear el cliente.
Si bien puede crear un cliente mediante este patrón de creación vacío, normalmente utiliza este patrón cuando desea añadir una configuración al código.
Propiedades del sistema JVM y variables de entorno del SDK for Java 2.x
Además de los ajustes entre varios SDK compatibles con la mayoría AWS SDKs, el SDK for Java 2.x proporciona los siguientes ajustes.
nota
Estas variables de entorno y propiedades del sistema JVM están destinadas principalmente a casos de uso avanzados, pruebas o escenarios de implementación específicos. En la mayoría de los códigos de las aplicaciones, es preferible utilizar las opciones de configuración programática que ofrecen los creadores de clientes del SDK para mejorar la seguridad tipográfica y la compatibilidad con el IDE.
Variables de entorno del proveedor de credenciales de contenedor
Además de las variables de entorno de credenciales de contenedor estándar documentadas en la guía de referencia, el SDK también admite:
AWS_CONTAINER_SERVICE_ENDPOINT
—Esta variable de entorno especifica el punto final del servicio de metadatos del contenedor cuando se utiliza el proveedor de credenciales del contenedor.
Propiedad del sistema Java: aws.containerServiceEndpoint
Valor predeterminado: http://169.254.170.2
Variables de entorno de implementación del cliente HTTP
SYNC_HTTP_SERVICE_IMPL
—Identifica de forma explícita la implementación HTTP sincrónica predeterminada que utilizará el SDK. Esto resulta útil cuando hay varias implementaciones en la ruta de clases o para optimizar el rendimiento, ya que el descubrimiento de la implementación requiere el escaneo de la ruta de clases.
Propiedad del sistema Java: software.amazon.awssdk.http.service.impl
ASYNC_HTTP_SERVICE_IMPL
—Identifica de forma explícita la implementación HTTP asíncrona predeterminada que utilizará el SDK. Esto resulta útil cuando hay varias implementaciones en la ruta de clases o como una optimización del rendimiento, ya que el descubrimiento de la implementación requiere el escaneo de la ruta de clases.
Propiedad del sistema Java: software.amazon.awssdk.http.async.service.impl