

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

# Usando il AWS SDK for Java 2.x
<a name="using"></a>

Questo capitolo mostra come utilizzarlo in AWS SDK for Java 2.x modo efficace. Impara a creare clienti di servizio, effettuare richieste, gestire le risposte e gestire gli errori. Il capitolo tratta la programmazione sincrona e asincrona, i risultati impaginati, i tempi necessari per il monitoraggio delle risorse e l'ottimizzazione delle prestazioni. 

Troverai anche le migliori pratiche per il riutilizzo dei client, linee guida per la risoluzione dei problemi, l'ottimizzazione dell'avvio Lambda, il supporto HTTP/2 e la configurazione DNS.

**Contents**
+ [Effettuare richieste utilizzando il Servizio AWS AWS SDK for Java 2.x](work-witih-clients.md)
  + [Utilizzo dei client di servizio per effettuare richieste](work-witih-clients.md#using-service-client)
    + [Crea un client di servizio](work-witih-clients.md#work-with-clients-create)
    + [Configurazione client predefinita](work-witih-clients.md#using-default-client)
    + [Configurare i client di servizio](work-witih-clients.md#using-configure-service-clients)
    + [Chiudere il client di servizio](work-witih-clients.md#using-closing-client)
  + [Effettua richieste](work-witih-clients.md#using-making-requests)
    + [Utilizzate le richieste per sovrascrivere la configurazione del client](work-witih-clients.md#using-override-client-config-request)
  + [Gestione delle risposte](work-witih-clients.md#using-handling-responses)
+ [Programmazione asincrona utilizzando il AWS SDK for Java 2.x](asynchronous.md)
  + [Usa un client asincrono APIs](asynchronous.md#basics-async-non-streaming)
  + [Gestisci lo streaming con metodi asincroni](asynchronous.md#basics-async-streaming)
  + [Configura opzioni asincrone avanzate](asynchronous.md#advanced-operations)
+ [Le migliori pratiche per l'utilizzo di AWS SDK for Java 2.x](best-practices.md)
  + [Impedisci il blocco delle richieste configurando i timeout delle API](best-practices.md#bestpractice5)
  + [Migliora le prestazioni riutilizzando i client di servizio](best-practices.md#bestpractice1)
  + [Previeni le fughe di risorse chiudendo i client di servizio inutilizzati](best-practices.md#bestpractice-close-client)
  + [Previeni l'esaurimento del pool di connessioni chiudendo i flussi di input](best-practices.md#bestpractice2)
  + [Ottimizza le prestazioni HTTP per il carico di lavoro delle tue applicazioni](best-practices.md#bestpractice3)
  + [Migliora le prestazioni SSL con OpenSSL per client asincroni](best-practices.md#bestpractice4)
  + [Monitora le prestazioni delle applicazioni con le metriche SDK](best-practices.md#bestpractice6)
+ [Gestione degli errori nel AWS SDK for Java 2.x](handling-exceptions.md)
  + [Perché le eccezioni non sono controllate?](handling-exceptions.md#why-unchecked-exceptions)
  + [AwsServiceException (e sottoclassi)](handling-exceptions.md#sdkserviceexception-and-subclasses)
  + [SdkClientException](handling-exceptions.md#sdkclientexception)
  + [Eccezioni e comportamento nei tentativi](handling-exceptions.md#retried-exceptions)
+ [Utilizzo dei risultati impaginati nella versione 2.x AWS SDK per Java](pagination.md)
  + [Impaginazione sincrona](pagination.md#synchronous-pagination)
    + [Iterate sulle pagine](pagination.md#iterate-pages)
    + [Iterate sugli oggetti](pagination.md#iterate-objects)
      + [Usa uno stream](pagination.md#use-a-stream)
      + [Usa un ciclo for-each](pagination.md#for-loop)
    + [Impaginazione manuale](pagination.md#manual-pagination)
  + [Impaginazione asincrona](pagination.md#asynchronous-pagination)
    + [Iterate su pagine di nomi di tabelle](pagination.md#iterate-pages-async)
      + [Usa un `Subscriber`](pagination.md#use-a-subscriber)
      + [Usa un `Consumer`](pagination.md#id1pagination)
    + [Esegui iterazioni sui nomi delle tabelle](pagination.md#iterate-objects-async)
      + [Usa un `Subscriber`](pagination.md#id2)
      + [Usa un `Consumer`](pagination.md#for-loop-async)
    + [Usa una libreria di terze parti](pagination.md#use-third-party-library)
+ [Usare i camerieri nel AWS SDK for Java 2.x](waiters.md)
  + [Prerequisiti](waiters.md#prerequisiteswaiters)
  + [Usare i camerieri](waiters.md#id1waiters)
    + [Programmazione sincrona](waiters.md#synchronous-programming)
    + [Programmazione asincrona](waiters.md#asynchronous-programming)
  + [Configura i camerieri](waiters.md#configuring-waiters)
    + [Configura un cameriere](waiters.md#configure-a-waiter)
    + [Sostituisci la configurazione per una richiesta specifica](waiters.md#override-configuration-for-a-specific-request)
  + [Esempi di codice](waiters.md#code-examples)
+ [Risoluzione dei problemi FAQs](troubleshooting.md)
  + [Come posso correggere l'errore "`java.net.SocketException`: ripristino della connessione» o «il server non è riuscito a completare la risposta»?](troubleshooting.md#faq-socketexception)
  + [Come posso correggere il «timeout della connessione»?](troubleshooting.md#faq-connection-timeout)
  + [Come posso risolvere il problema "`java.net.SocketTimeoutException`: Read timeout»?](troubleshooting.md#faq-socket-timeout)
  + [Come posso correggere l'errore «Impossibile eseguire la richiesta HTTP: timeout in attesa di connessione dal pool»?](troubleshooting.md#faq-pool-timeout)
  + [Come posso riparare un`NoClassDefFoundError`, or? `NoSuchMethodError` `NoSuchFieldError`](troubleshooting.md#faq-classpath-errors)
  + [Come posso correggere un errore "`SignatureDoesNotMatch`" o l'errore «La firma della richiesta che abbiamo calcolato non corrisponde alla firma che hai fornito»?](troubleshooting.md#faq-signature-does-not-match-error)
  + [Come posso correggere l'errore "`java.lang.IllegalStateException`: Connection pool shut down»?](troubleshooting.md#faq-connection-pool-shutdown-exception)
  + [Come posso risolvere il problema «Impossibile caricare le credenziali da nessuno dei provider della catena «? AwsCredentialsProviderChain](troubleshooting.md#faq-credentials-provider-chain)
    + [Cause e soluzioni comuni](troubleshooting.md#faq-cred-provider-chain-common-causes-and-solutions)
      + [Rivedi la configurazione delle credenziali](troubleshooting.md#faq-cred-provider-chain-check-config)
        + [Per le istanze Amazon EC2](troubleshooting.md#faq-cred-check-ec2)
        + [Per ambienti container](troubleshooting.md#faq-cred-check-container-env)
        + [Per lo sviluppo locale](troubleshooting.md#faq-cred-check-local-dev)
        + [Per la federazione delle identità web](troubleshooting.md#faq-cred-check-web-id-federation)
      + [Problemi di connettività di rete o proxy](troubleshooting.md#faq-credentials-provider-chain-network-issues)
+ [Riduci i tempi di avvio dell'SDK per AWS Lambda](lambda-optimize-starttime.md)
  + [Utilizzate un client AWS HTTP basato su CRT](lambda-optimize-starttime.md#lambda-quick-url)
  + [Rimuovi le dipendenze inutilizzate del client HTTP](lambda-optimize-starttime.md#lambda-quick-remove-deps)
  + [Configura i client di servizio per abbreviare le ricerche](lambda-optimize-starttime.md#lambda-quick-clients)
  + [Inizializza il client SDK all'esterno del gestore di funzioni Lambda](lambda-optimize-starttime.md#lambda-quick-initialize)
  + [Riduci al minimo l'iniezione di dipendenza](lambda-optimize-starttime.md#lambda-quick-di)
  + [Usa un targeting Maven Archetype AWS Lambda](lambda-optimize-starttime.md#lambda-quick-maven)
  + [Prendi in considerazione Lambda SnapStart per Java](lambda-optimize-starttime.md#lambda-quick-snapstart)
  + [Modifiche alla versione 2.x che influiscono sul tempo di avvio](lambda-optimize-starttime.md#example-client-configuration)
  + [Risorse aggiuntive](lambda-optimize-starttime.md#lambda-quick-resources)
+ [Implementare `ContentStreamProvider` nel AWS SDK for Java 2.x](content-stream-provider.md)
  + [Uso di `mark()` e `reset()`](content-stream-provider.md#csp-impl-mark-reset)
  + [Usa il buffering se `mark()` e `reset()` non sono disponibili](content-stream-provider.md#csp-impl-unsupported-streams)
  + [Crea nuovi stream](content-stream-provider.md#csp-impl-new-stream)
+ [Imposta il TTL JVM per le ricerche dei nomi DNS](jvm-ttl-dns.md)
  + [Come impostare il TTL JVM](jvm-ttl-dns.md#how-to-set-the-jvm-ttl)
    + [Opzione 1: impostala a livello di codice nella tua applicazione](jvm-ttl-dns.md#set-ttl-programmatically)
    + [Opzione 2: impostala nel file java.security](jvm-ttl-dns.md#set-ttl-java-security-file)
    + [Opzione 3: utilizzare il fallback delle proprietà del sistema JDK (riga di comando)](jvm-ttl-dns.md#set-ttl-system-property)
+ [Lavora con HTTP/2 in AWS SDK per Java](http2.md)