我们有一个数据丢失是可以接受的用例(考虑30-50%的损失是可以接受的)。为了降低成本,我们想知道是否可以将Kafka的复制因子配置为1,这样消费者和生产者就可以通过简单地消费和生产可用分区来从代理故障中恢复。
如果这是可能的,需要设置哪些配置?
还有其他代理技术天生就是这样的,然而,我们希望避免引入另一种技术,因为kafka已经是我们生态系统的一部分。
发布于 2016-10-30 10:51:32
如果通过bin/kafka-topics.sh
创建新主题,则需要指定参数--replication-factor
;只需将其设置为1
即可禁用复制。
对于现有的主题,您可以使用参数--alter
使用bin/kafka/topics.sh
更改复制因子。
对于生产者和消费者,你可能需要做一些额外的异常处理。例如,如果您在写入记录时指定了一个专用分区,并且无法访问代理,则可能需要执行此操作(可能只需跳过此写入操作或其他适当的操作)。但是您不需要为您的客户端设置特定的配置。
https://stackoverflow.com/questions/40313714
复制相似问题