Я пытался реализовать балансировку нагрузки для потребителей потока Aws kinesis
Согласно документации я пытаюсь реализовать
spring:
cloud:
stream:
instanceIndex: 1
instanceCount: 3
bindings:
RollUpInboundStream:
group: my-consumer-group
destination: my-kinesis-stream
content-type: application/json
У меня есть 3 контейнера, я хочу при необходимости открыть новые контейнеры (максимум 6) без перезапуска существующих.
- InstanceIndex начинается с 0 или 1.
- Если я дам instanceCount равным 6, но вызову только три экземпляра, все сообщения будут использованы, пока я не вызову новые экземпляры.
- В документации есть свойство spring.cloud.stream.bindings..consumer.concurrency. Можете ли вы помочь в его важности.
- По некоторым причинам, если какой-либо экземпляр выйдет из строя, какое-либо из сообщений останется невостребованным.
Не могли бы вы нам помочь?