解释这个-https://docs.spring.io/spring-cloud-stream/docs/current/reference/htmlsingle/#_producer_properties
我的理解是,如果partitioncount override小于现有kafka主题上的实际分区数,那么生产者应该使用实际分区数,而不是override值。我的经验是,无论kafka主题上实际配置了多少个分区(>partitioncount),生产者都使用partitioncount值。
理想情况下,我希望生产者从kafka读取预配置主题上的分区数,并跨所有可用分区编写消息。
spring云版本:finchley.release
kafka broker版本:1.0.0
应用程序.yml:
spring:
application:
name: my-app
cloud:
stream:
default:
contentType: application/json
kafka:
binder:
brokers:
- ${KAFKA_HOST}:${KAFKA_PORT}
auto-create-topics: false
bindings:
input-channel:
destination: input-topic
contentType: application/json
group: input-group
output-channel:
destination: output-topic
contentType: application/json
producer:
partition-count: 2
partition-key-expression: payload['Id']
因此,我希望如果输出主题已经配置了6个分区,那么生产者将识别出这一点并写入所有这些分区。有人能核实一下我上面的解释吗?或者指出我缺少什么来获得所需的功能?
暂无答案!
目前还没有任何答案,快来回答吧!