Un'azienda esegue un'applicazione su più istanze Amazon EC2 che elabora messaggi da una coda Amazon SQS, scrive su una tabella Amazon RDS e quindi elimina il messaggio dalla coda. Nella tabella RDS compaiono occasionalmente record duplicati, anche se la coda SQS non contiene messaggi duplicati. Cosa dovrebbe fare un architetto di soluzioni per garantire che i messaggi vengano elaborati una sola volta?
Scegli una risposta
Tocca un'opzione per controllare la tua risposta.
Risposta corretta: Utilizzare la chiamata API ChangeMessageVisibility per aumentare il timeout di visibilità..
Perché questa è la risposta
L'aumento del timeout di visibilità tramite ChangeMessageVisibility è la soluzione corretta. I record duplicati in RDS, nonostante SQS non contenga messaggi duplicati, indicano che più istanze EC2 stanno elaborando lo stesso messaggio. Questo accade tipicamente quando un'istanza riceve un messaggio, ma non riesce a elaborarlo e a eliminarlo dalla coda entro il timeout di visibilità predefinito. Di conseguenza, il messaggio torna visibile e un'altra istanza (o la stessa) lo riceve e lo elabora nuovamente. Aumentando il timeout, si concede più tempo all'istanza per completare l'elaborazione e l'eliminazione, prevenendo il riprocessamento. CreateQueue non risolve il problema dei duplicati. AddPermission riguarda l'autorizzazione all'accesso alla coda, non la logica di elaborazione. ReceiveMessage con un tempo di attesa influisce su come i messaggi vengono recuperati, ma non impedisce il riprocessamento se il timeout di visibilità è troppo breve.
Supera il tuo esame — senza l'infinita caccia alle risposte
Ottieni ogni domanda e spiegazione verificata per questo esame in un unico posto, e risparmia ore di preparazione. Oltre 1.000 certificazioni · Oltre 20 lingue · Inizia gratuitamente.
Supera il tuo esame più velocemente → Nessuna carta richiesta