Dlaczego wiadomość z kolejki może pojawić się drugi raz?
Najpierw odpowiedz na głos lub w myślach, potem porównaj.
Odpowiedź
Kolejka i program wykonujący pracę nie zawsze wiedzą jednocześnie, czy zadanie zostało ukończone. Program mógł zapisać wynik, a potem zakończyć się przed potwierdzeniem. Kolejka widzi brak potwierdzenia i pozwala spróbować ponownie.
To często świadomy wybór: lepiej dopuścić powtórzenie niż zgubić zadanie. Dlatego obsługę trzeba przygotować na duplikaty. Jeśli wiadomość mówi „dodaj 10 do licznika”, bez zabezpieczenia po dwóch dostawach dodamy 20. Potrzebny jest stabilny identyfikator tej samej operacji i sposób rozpoznania, że jej skutek już zapisano. Szczegóły gwarancji zależą od użytej kolejki i jej konfiguracji.
Dlaczego to ważne: To najprostsze wejście do problemu niezawodności kolejek.
Możliwe dopytania: Czy potwierdzenie przed wykonaniem pracy rozwiązuje problem bez nowych ryzyk?
Jak poszło? Bądź szczery — „Jeszcze nie” dodaje pytanie do powtórki.
Przećwicz w kodzie
- Znajdź błędy odbiorcy kolejki — samodzielna ocena z listą kontrolną
Dalsza lektura
- AWS: Using Lambda with Amazon SQS(otwiera się w nowej karcie)Docs; dostęp 22.10.2026. Polling, batch, duplikaty i partial batch response.
- AWS: What is Amazon SQS?(otwiera się w nowej karcie)Dostęp 22.10.2026. Nadawca, kolejka, odbiorca i cykl wiadomości.