如何使用Kafka在Spring Cloud Stream中设置幂等生产者?

时间:2017-11-26 23:49:02

标签: spring apache-kafka spring-cloud spring-cloud-stream spring-kafka

我想利用Kafka 0.11中引入的幂等生产者。根据这个Confluent blog post,添加了一个新属性来支持这个:

  

Idempotence:每个分区的语义完全一次

     

打开此功能并获得每次完全一次的语义   分区 - 意味着没有重复,没有数据丢失,并且有序   语义 - 配置你的生产者设置“enable.idempotence = true”。

关键是Spring Cloud Stream和Spring Kafka都没有使用该属性。我们如何在Spring Cloud Stream应用程序中配置它?

1 个答案:

答案 0 :(得分:0)

可以使用spring.cloud.stream.kafka.bindings.<channel>.producer.configuration设置任意kafka属性,documented here

所以,只需在那里设置属性即可。

当然,您需要覆盖默认的kafka绑定器以使用dafmars版本系列release notes中讨论的kafka11工件。

kafka11活页夹也支持交易。