Una funzione Lambda consuma messaggi da una coda standard di Amazon SQS ma a volte elabora lo stesso messaggio più volte. Qual è il modo più conveniente per interrompere l'elaborazione duplicata?
Scegli una risposta
Tocca un'opzione per controllare la tua risposta.
Risposta corretta: Sostituire la coda standard SQS con una coda SQS FIFO e utilizzare l'ID di deduplicazione del messaggio..
Perché questa è la risposta
La risposta corretta è sostituire la coda standard SQS con una coda SQS FIFO e utilizzare l'ID di deduplicazione del messaggio. Le code SQS FIFO (First-In, First-Out) garantiscono l'elaborazione dei messaggi esattamente una volta e nell'ordine esatto in cui vengono inviati. L'ID di deduplicazione del messaggio, fornito dal mittente o generato automaticamente, impedisce l'invio di messaggi duplicati entro un intervallo di deduplicazione di 5 minuti. Configurare una dead-letter queue (DLQ) per la coda SQS non impedisce l'elaborazione duplicata; serve a isolare i messaggi che non possono essere elaborati con successo dopo un certo numero di tentativi. Impostare il limite di concorrenza riservata della funzione Lambda su 1 limita l'esecuzione simultanea della funzione a un'istanza, ma non impedisce a SQS di consegnare lo stesso messaggio più volte in caso di errori o timeout, né garantisce l'elaborazione una tantum. Passare da SQS ad Amazon Kinesis Data Streams non è la soluzione più conveniente per questo specifico problema, in quanto Kinesis è progettato per lo streaming di dati in tempo reale e non offre intrinsecamente le stesse garanzie di deduplicazione "exactly-once" di SQS FIFO senza un'implementazione aggiuntiva complessa.
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