【发布时间】:2016-08-09 18:51:39
【问题描述】:
假设,我有一个包含 6 个分区和 2 个消费者的主题,其中 P1、P2、P3 由 C1 处理,P4、P5、P6 由 C2 处理。假设用户数据 U1 总是到 P1,U2 到 P2 等等。
所以,
C1 maintains state of users U1, U2, U3
C2 maintains state of users U4, U5, U6.
现在让我们假设我们再添加一个消费者 C3,以便重新平衡发生,现在
P1, P2, P3 -> C1
P4, P5 -> C2
P6 -> C3
所以我的应用程序在 C2 中维护用户 U6 状态,但现在 U6 数据正在流向 C3
现在不知何故,U6 状态从 C2 流向 C3。那么这是如何在 Kafka 中实现的,知道这是一个非常常见的问题
或
如果Kafka不提供任何支持,那么这个问题一般是怎么解决的……有什么设计模式可以解决吗?
【问题讨论】:
标签: apache-kafka messaging kafka-producer-api advanced-queuing kafka-python