0

In SQS, there is an invisibility time, so if a message is read by one worker node, it's not delivered to the other worker node unless the invisibility time expires and of course then that message is available for other worker nodes.

Now, I want to understand how I can achieve the same thing in Kinesis, to make sure a message is delivered to only one worker node unless it's failed(invisibility time has expired like in SQS) and processed only once if the first worker node has successfully processed it?

Ankur Sharma
  • 187
  • 2
  • 14
  • 1
    Rather than making Kinesis behave like SQS, just use SQS. – Asdfg Aug 29 '19 at 15:15
  • I have multiple consumer groups, as well as to save it on S3 using FireHose too. – Ankur Sharma Aug 29 '19 at 15:19
  • You can save it on S3 without firehose. – Asdfg Aug 29 '19 at 15:24
  • An SNS with multiple SQS subscribers will be easier if you already have a working solution started. Short answer for Kinesis is yes, look at https://docs.aws.amazon.com/streams/latest/dev/shared-fan-out-consumers.html and https://docs.aws.amazon.com/lambda/latest/dg/with-kinesis.html and https://stackoverflow.com/questions/32501985/amazon-kinesis-aws-lambda-retries – WaltDe Aug 29 '19 at 16:00

0 Answers0