Вы, вероятно, обнаружите, что Amazon SQS делает это для вас автоматически.
Общий поток:
- Сообщения помещаются в очередь Amazon SQS
- Workers извлечение сообщений из очереди из очереди
- Как только сообщение извлечено из очереди, оно остается в очереди, но помечается как ' invisible '
- Как только работник обработал сообщение, он удаляет сообщение из очереди
- Однако, если сообщение не будет удалено в течение указанного периода времени, сообщение будет автоматически снова появляется в очереди, готовый к обработке другим работником
- Если это происходит более определенного числа раз, сообщение может быть перемещено в очередь недоставленных сообщений для дальнейшего изучения и обработки
Таким образом, если во время обработки сообщения SQS произойдет ошибка, она автоматически появится позже и будет обработана снова.
См .: AmazonSQS VisibiliТайм-аут