

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

# GAMEPERF05-BP02 Sposta le attività di elaborazione non sensibili alla latenza in flussi di lavoro asincroni
<a name="gameperf05-bp02"></a>

 Quando ottimizzi le prestazioni del gioco, è importante tenere presente che solo alcune delle interazioni tra il client e il backend del gioco devono essere eseguite in modo sincrono. Dovresti considerare ogni funzionalità dal punto di vista dell'esperienza del giocatore e determinare se determinate interazioni richiedono comunicazioni sincrone, che sono bloccanti e richiedono molte risorse, o se tali funzionalità possono essere implementate in modo asincrono. Quando implementate le chiamate di rete, utilizzate un approccio asincrono e non bloccante. Inoltre, il backend di gioco dovrebbe essere configurato per svolgere il lavoro in modo efficiente, alleggerendo le attività alle code e dando priorità alle risposte rapide ai client, ove possibile. 

 **Livello di rischio associato se questa best practice non fosse adottata:** elevato 

## Guida all’implementazione
<a name="implementation-guidance-55"></a>

 Ad esempio, l'aggiornamento di una classifica alla fine di una sessione di gioco può essere implementato in modo asincrono in modo che il cliente non debba attendere il completamento dell'aggiornamento della classifica. Invece, implementalo in modo asincrono sul client di gioco e valuta la possibilità di progettare un servizio di backend in modo da inserire questi tipi di operazioni in coda, come Amazon SQS. Con questa architettura, configura il tuo backend in modo che accetti la richiesta, mettila in coda in SQS, che consente di archiviare in modo duraturo i messaggi per l'elaborazione asincrona, e rispondi prontamente al client. Una volta completato l'aggiornamento della classifica, il backend può inviare un aggiornamento al client di gioco in modo che la visualizzazione della classifica da parte del giocatore venga aggiornata. 

 In alternativa, il giocatore può semplicemente visitare la schermata della classifica del gioco per recuperare i dati più recenti, inviando una richiesta web al backend per recuperare i dati più recenti dalla cache. 

### Passaggi dell’implementazione
<a name="implementation-steps-54"></a>
+  Determina se le interazioni client-backend richiedono una comunicazione sincrona; implementa approcci asincroni e non bloccanti, ove possibile, per ottimizzare l'utilizzo delle risorse. 
+  Usa Amazon SQS per scaricare attività non critiche come gli aggiornamenti delle classifiche. 
+  Consenti al cliente di recuperare i dati aggiornati in modo asincrono, ad esempio recuperando i dati più recenti della classifica su richiesta o tramite aggiornamenti in background. 

### Resources
<a name="resources-11"></a>
+  [Informazioni sulla messaggistica asincrona per microservizi ](https://aws.amazon.com/blogs/compute/understanding-asynchronous-messaging-for-microservices/) 
+  [Lambda: utilizzo delle integrazioni dei servizi e dell'elaborazione asincrona ](https://docs.aws.amazon.com/lambda/latest/operatorguide/integrations-asynchronous.html) 