Is there a need to do something to ensure delivery to queue (SQS) on AWS?

Assuming I have 2 microservices "A" and "B"that are communicating via an SQS queue "F".

The microservice " a "can fall," B "can also fall, the question is: Should I take into account that" F " could also fall?

If I take into account that " F "can fall, I could do something like put the message to be sent in a table in the bank and do asynchronous sending via job to "F", but this looks like a overengineering.

According to the link https://aws.amazon.com/pt/sqs/faqs / AWS says this: "standard queues offer delivery at least once, that is, each message is delivered at least once."

Should I just rely on SQS availability and track in case something is not shipped instead of doing something to "secure delivery" to "F"?

Author: Lorival Smolski Chapuis, 2018-11-06

1 answers

It is usually not necessary to track message deliveries, and it would be very difficult to do so more efficiently than SQS. If you need more control over message consumption, it might be more interesting to consider other services, such as Amazon Kinesis. Also Note that the message retention limit in SQS is 14 days, messages need to be consumed in this period.

 0
Author: Julio Faerman, 2018-11-08 08:54:54