制作人可以有多个Kafka主题吗?

时间:2020-07-16 16:29:20

标签: apache-kafka

我有多个生产者写入单个主题,该主题是策略中定义的默认主题,是否可以在不更改默认主题的情况下创建新主题?换句话说,一个生产者可以同时登录多个主题吗?

1 个答案:

答案 0 :(得分:2)

换句话说,一个生产者可以同时登录多个主题吗?

是的,一个制作人可以制作多个主题。主题与制作人之间的关系不是一对一的。

示例:

 producer.send(new ProducerRecord<String, String>("my-topic", "key", "val"));

send()方法采用包含主题名称的ProducerRecord。因此,我们可以为每个send()调用指定不同的主题名称。

但是,key.serializervalue.serializer很重要。每个制作人(而不是每个主题)仅指定一个key.serializer和一个value.serializer。 在这种情况下,您所有的主题消息都只能使用这些序列化程序进行序列化。

如果要支持不同的对象,请编写一个对所有对象都通用的自定义序列化程序(也许是Json序列化程序),或将对象转换为序列化程序可以序列化的格式(例如{{1} } StringStringSerializer byte[]