Kafka主题在消息上没有重复

时间:2018-01-24 23:31:25

标签: apache-kafka kafka-producer-api

如何使用kafka主题中的消息实现此类结果?

即类似更改日志的功能 - 主题中有多条消息,但我只关心最后一条消息。

案例主题中发生的事情是分区了吗?

卡夫卡有可能吗?

1 个答案:

答案 0 :(得分:1)

为实现此目的,您应将此主题的cleanup.policy设置为compact,如下所示:

创建主题:

  

bin / kafka-topics.sh --zookeeper localhost:2181 --create --topic my-topic --partitions 1 --rerelication-factor 1 --config cleanup.policy = compact

更新主题:

  

bin / kafka-configs.sh --zookeeper localhost:2181 --entity-type topics --entity-name my-topic --alter --add-config cleanup.policy = compact

设置compact策略后,您必须为每条消息分配一个密钥,Kafka生产者将根据该密钥对消息进行分区。