2017-09-05 72 views
0

我正在将我的Java项目从Rabbit MQ迁移到Kafka(出于某些原因)。如何将工作流程添加到Kafka消息?

但是,我面临着一个难题。

在当前工作流程中,我将所有消息发布到rabbit mq exchange,并根据消息的路由密钥将消息重定向到一个或多个队列。 我想在卡夫卡也保留相同的功能。 (我知道kafka本来不适合它,但我想要一个解决方法)。

基本上,我想要这样的东西:每当一个主题收到一条消息时,根据消息中存在的元,消息应该被重定向到其他主题集。

实现此目的的最快方法是什么?我宁愿Python或Java解决方案

感谢

+0

[Streaming messages to multiple topics]可能重复(https://stackoverflow.com/questions/42388525/streaming-messages-to-multiple-topics) –

回答

0

如果您发布的钥匙,他们将被引导到主题分区,使得所有类似钥匙去同一个分区卡夫卡的消息。

或者,您可以使用Kafka Streams读取输入主题,并根据消息提供的密钥将消息路由到一组输出主题。

+0

有没有关于此的任何教程或博客? – praddy

+0

是否可以使用1个主题作为交换。每当用某个键值对在主题上接收到消息时,将其重定向到一组特定主题? – praddy

+0

看看这个:https://stackoverflow.com/questions/42388525/streaming-messages-to-multiple-topics –