AWS SQS Повторить несколько раз
Я работаю над требованием, которое просит меня вызвать определенную конечную точку после успешного получения некоторых данных. Мы достигли этого, используя тему SNS, размещенную в очереди SQS, которая, в свою очередь, вызывает конечную точку. SNS -> SQS -> Моя конечная точка (сообщение Process Q) -> Вызывает внешнюю конечную точку для получения данных.
Теперь мы обнаружили, что данные недоступны сразу после обработки заказа, и теперь требуется повторять попытки каждые 30 секунд в течение 5 раз.
Есть ли способ, которым мы можем достичь этого?
Прямо сейчас я сделал так, что моя конечная точка, которая обрабатывает сообщение из очереди, всегда возвращает ошибку, так что сообщение повторяется.
У меня установлен тайм-аут видимости 30 секунд, поэтому сообщение повторяется каждые 30 секунд в течение 5 раз.
Есть ли лучший способ добиться того, чего я хочу, с моей существующей установкой? Пожалуйста помоги.
1 ответ
Почему бы не опубликовать сообщение, когда указанные данные доступны, а затем использовать это сообщение только в качестве триггера? Тогда сообщение SQS не будет ошибаться с первого раза.
Если по какой-либо причине это невозможно (на самом деле это не так, но YNK), то да, просто выведите ошибку, как вы сделали, и она повторится. Он должен работать.