当前位置: 首页 > 知识库问答 >
问题:

Apache Camel-Kafka制作人:动态设置主题名称

隆安然
2023-03-14

我有一个基于camel的应用程序(spring,用XML描述路由)。我希望它能够将输入消息路由到未知数量的Kafka主题(基于文件名模式和主题名称之间的可配置匹配),这样我就无法在xml文件中提前创建每个模式的生产者。

理想情况下,我们应该能够在消息头中设置主题,比如分区id。。。

有人有什么建议吗?

共有1个答案

松新
2023-03-14

最后,这是可能的。我指的是Kafka消费者的错误来源。在最新的版本中,它的行为完全符合我的期望。

topic = exchange.getIn().getHeader(KafkaConstants.TOPIC, topic, String.class);

因此,我们必须设定Kafka常数。消息中的主题标题,以便动态选择主题。

 类似资料:
  • 我想使用spring cloud stream framework创建一个kafkaendpoint,它将有一个http post api到。如何动态更改属性 我可以使用实现来实现上述功能,但不知道是否有可能在Spring中开发此功能。

  • 假设我有一个主题T1,它有三个分区,即P1、P2和P3。其中p1是领导者,rest是追随者。

  • 我有一个服务器a,在服务器a中,我安装了kafka并启动了kafka和Zookeeper。我还创建了一个主题作为my_topic。现在我有一个应用程序B运行在服务器B中,应用程序B有一些数据,我想把这些数据推送到服务器A中的my_topic。我是否也需要在服务器B中安装kafka并在服务器B中创建一个生产者?如果是,如何将来自服务器B的消息推送到服务器A中的主题?介质是什么?

  • 我在向我的Kafka主题发送序列化XML时遇到问题。每当我运行我的代码时,我都不会收到任何异常或错误消息,但我仍然无法在Kafka主题中看到我的任何消息。 我的Kafka制作人设置如下: 当我运行代码时,我得到: 知道怎么做吗?提前谢谢!

  • 我有多个主题A、B和C,我正在使用Kafka Streams将它们扇形成主题X。主题A、B和C使用默认主题名称策略在模式注册表中注册为主题。流式传输非常愚蠢,因为它只是将消息扇形,而不确保它们符合注册表中的模式,但它会在消息中添加一个ORIGINAL_TOPIC_NAME标头以指示它来自主题A、B或C。 然后,我让Kafka消费者从主题X中消费。该主题未在模式注册表中注册。Kafka消费者是我使用

  • 我是斯卡拉和Kafka的新手,遇到了一些麻烦。 我正在尝试将scala kafka producer连接到安装在cloudera express服务器上的kafka服务器。我已经用这些指令在VMs中这样做过一次了,没有任何问题。 当我运行producer时,所需的主题被创建,但没有任何消息被发送,或者我是这样认为的。 Kafka制作人 当我执行run方法时,我看到“producer-send:#”