В моем приложении Producer.properties у меня есть
spring.cloud.stream.bindings.output.producer.partitionKeyExpression=payload
spring.cloud.stream.bindings.output.producer.partitionCount=4
И мой потребительский application.properties выглядит так
spring.cloud.stream.bindings.input.consumer.partitioned=true
spring.cloud.stream.bindings.input.group=group01
Когда я развертываю свое приложение в Pivotal Cloud Foundry и масштабирую приложение до 2 экземпляров, я вижу, что создаются две очереди. Они привязаны к обмену суффиксами -0 и -1.
Но это означает, что если сообщение приходит с темой, оканчивающейся на -3 или -4, то они теряются, потому что для этих тем не существует привязок. Если я масштабирую потребителя до 4 экземпляров, он работает, как и ожидалось.
Мой вопрос: возможно ли иметь экземпляры потребителей меньше, чем partitionCount производителя? В этом случае одна или несколько очередей будут иметь несколько привязок к обмену.