In light of the discussion here, @sobychacko suggested a new question be created, linking to that discussion. So, can someone please answer the last question that was posted in that post?
But in this case We ate talking about a single consumer application. What about if we have multiple instances of consumer application
So, if there are 10 end-user consumer containers deployed to a k8s pod, for example, how would 40 Kinesis shards be distributed across those 10 end-user consumer containers? What properties drive how the shards are distributed? And, how can we be sure that end-user consumer containers don't keep switching shards once a shard is assigned to an end-user consumer container?
To add even more context to this discussion, I have posted another different, but I think related,stackoverflow post .
According to your other question: Spring Cloud Stream binder for AWS Kinesis and issues with getShardIterator , it sounds like you are on a very old version of Kinesis Binder. There were many changes in between, so definitely there is a high chance those shards distributed differently in the current version, than it was like "all for the first consumer" before.
Hard to help you since we don't support that old version any more.