首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在卡夫卡中建立一个异质的话题?

如何在卡夫卡中建立一个异质的话题?
EN

Stack Overflow用户
提问于 2022-09-26 08:48:02
回答 1查看 19关注 0票数 0

目前,我正试图围绕卡夫卡消费者解决方案建立一些集成测试。对于同质主题,我已经做得很好了,但是测试也要求我设置一个异构的主题,而且我似乎不能正确地指定模式。

在控制面板中,我所做的是创建一个记录模式数组,如下所示:

代码语言:javascript
复制
[
  {
    "fields": [
      {
        "name": "foo",
        "type": "string"
      }
    ],
    "name": "TestRecord",
    "namespace": "my.test",
    "type": "record"
  },
  {
    "fields": [
      {
        "name": "bar",
        "type": "long"
      }
    ],
    "name": "TestRecordToo",
    "namespace": "my.test",
    "type": "record"
  }
]

当我使用我们为此目的制作的自定义作者在这个主题中推送消息时,Kafka将这个数组进行了修改。原始数组变为v1,两个值变为v2和v3,因此实际上只传输最终消息格式。

如何使用将在主题中包含两种不同消息格式的架构配置本地实例?

EN

回答 1

Stack Overflow用户

发布于 2022-09-26 13:25:13

简单地回答这个问题--卡夫卡自己不在乎这个话题是什么。

架构只能是一种消息格式。发送数组不会注册多个模式(至少在我的经验中,我们总是在单个记录上注册)。也就是说,发送给主题或注册的格式不应该是数组中的“最终格式”,而应该是生产者序列化程序实际使用的格式。

如果您使用新的格式,那么这是一个新的版本,但是它不会改变主题中以前发送的数据,因为Kafka记录是不可变的。

但是版本只分配给每个主题。如果您确实希望主题中有不同的模式,而不仅仅是向后兼容对同一主题的修改,则需要更改主体策略

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73851654

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档