在kafka主题使用者上实现节流

bf1o4zei  于 2021-06-06  发布在  Kafka
关注(0)|答案(1)|浏览(351)

我们正在构建一个系统,以可控和可预测的速度将数据从生态系统中的一个点移动到另一个点。系统基本上有一个主Kafka主题,它获取n种类型的消息。然后,使用此主题的代理根据消息负载主题将消息放入n个工作队列中的一个。然后,这些工人队列中的工人实际在做这项工作。
现在我想实现控制旋钮,比如-暂停/恢复/限制来自代理的1种类型的消息。假设代理和工作人员之间没有通信,我怎么做呢。我是否应该为代理编写这些消息的每个worker设置一个单独的“系统事件”主题?或者最好在顶层也有n个队列?

11dmarpk

11dmarpk1#

我个人更喜欢由代理中的不同线程处理暂停/恢复/限制逻辑,这些线程位于kafka使用者之后。这将确保如果您限制某个特定类型,它不会妨碍其他类型的处理。因此,基本上kafka使用者会根据类型将特定于类型的操作委托给不同的线程。

相关问题