我已經建立了一個生產者春天雲流app和kafka作爲活頁夾。這裏是application.yml:春天雲流kafka
spring:
cloud:
stream:
instanceCount : 1
bindings:
output:
destination: topic-sink
producer:
partitionSelectorClass: com.partition.CustomPartition
partitionCount: 1
...
我有兩個實例(同一個應用程序運行在單個jvm上)作爲消費者。這裏是application.yml:
spring:
cloud:
stream:
bindings:
input:
destination: topic-sink
group: hdfs-sink
consumer:
partitioned: true
...
我卡夫卡組的理解是,消息將只進行一次消費,對於那些消費者在同一組。比方說,如果生產者應用程序生成消息A,B並且同一組中有兩個消費者應用程序,則消息1將讀取消息A,消費者2將讀取消息B,C.但是,我的消費者正在消費相同消息。我的假設錯了嗎?
與消費者團體的想法是,該組內所有的消費者將消費從給定主題的所有事件。但是,如果消費者的數量多於該主題的分區數,那麼N個消費者(其中N是#consumers - #分區)將無所作爲。 – Arek