Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Trabalhar com o Amazon S3

Modo de foco
Trabalhar com o Amazon S3 - AWS SDK for Java 2.x

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á.

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á.

Esta seção fornece informações básicas para trabalhar com o Amazon S3 usando o. AWS SDK for Java 2.x Esta seção complementa os exemplos de Java v2 do Amazon S3 apresentados na seção Exemplos de código deste guia.

Clientes S3 no AWS SDK for Java 2.x

AWS SDK for Java 2.x Ele fornece diferentes tipos de clientes S3. A tabela a seguir mostra as diferenças e pode ajudá-lo a decidir o que é melhor para seus casos de uso.

Diferentes tipos de clientes do Amazon S3
Cliente S3 Descrição breve Quando usar Limitação/desvantagem

AWS Cliente S3 baseado em CRT

Interface: S3 AsyncClient

Construtor: S3 CrtAsyncClientBuilder

  • Fornece as mesmas operações assíncronas de API do cliente assíncrono S3 baseado em Java, mas com maior desempenho.

  • Requer a aws-crt dependência.

  • Suporta transferências paralelas automáticas (multipartes).

Consulte Usar um cliente do S3 de alta performance: cliente do S3 baseado no AWS CRT.

  • Seu aplicativo transfere objetos grandes (> 8 MB) e você deseja maximizar o desempenho.

  • Você quer fazer upload de objetos com tamanho de conteúdo desconhecido.

  • Você quer um pool de conexões e um balanceamento de carga de DNS aprimorados, o que melhora a taxa de transferência e o desempenho.

  • Você quer maior confiabilidade de transferência no caso de uma falha na rede. Peças individuais com defeito são testadas novamente sem reiniciar a transferência desde o início.

  • Suporta menos configurações do que os clientes S3 baseados em Java.

  • Requer uma dependência adicional.

Cliente assíncrono S3 baseado em Java com várias partes habilitadas

Interface: S3 AsyncClient

Construtor: S3 AsyncClientBuilder

  • Fornece uma API assíncrona.

  • Suporta transferências paralelas automáticas (várias partes) quando você ativa várias partes no momento da criação.

Consulte Configurar o cliente assíncrono S3 baseado em Java para usar transferências paralelas.

  • Seu aplicativo transfere objetos grandes e você deseja melhorar o desempenho.

  • você deseja fazer upload de um objeto com tamanho de conteúdo desconhecido.

  • Você quer maior confiabilidade de transferência no caso de uma falha na rede. Peças individuais com defeito são testadas novamente sem reiniciar a transferência desde o início.

  • Você precisa de opções de configuração que não estão disponíveis com o cliente S3 AWS baseado em CRT.

Menos desempenho do que o cliente S3 AWS baseado em CRT.

Cliente assíncrono S3 baseado em Java sem habilitação de várias partes

Interface: S3 AsyncClient

Construtor: S3 AsyncClientBuilder

  • Fornece uma API assíncrona.

  • Você está transferindo objetos com menos de 8 MB.

  • Você quer uma API assíncrona.

Sem otimização de desempenho.

Cliente de sincronização S3 baseado em Java

Interface: S3Client

Construtor: S3 ClientBuilder

  • Fornece uma API síncrona.

  • Você está transferindo objetos com menos de 8 MB.

  • Você quer uma API síncrona.

Sem otimização de desempenho.

nota

A partir da versão 2.18.x, o AWS SDK for Java 2.x usa endereçamento no estilo hospedado virtual ao incluir uma substituição de endpoint. Isso se aplica desde que o nome do bucket seja um rótulo DNS válido.

Chame o método forcePathStyle com true no seu construtor de clientes para forçar o cliente a usar o endereçamento no estilo de caminho para os buckets.

O exemplo a seguir mostra um cliente de serviço configurado com uma substituição de endpoint e usando o endereçamento no estilo de caminho.

S3Client client = S3Client.builder() .region(Region.US_WEST_2) .endpointOverride(URI.create("https://s3.us-west-2.amazonaws.com")) .forcePathStyle(true) .build();

Nesta página

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.