首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Avro消息中的Avro消息:合理吗?

Avro消息中的Avro消息:合理吗?
EN

Stack Overflow用户
提问于 2018-08-20 02:10:11
回答 1查看 83关注 0票数 0

我想和Kafka和avro一起做一些疯狂的事情。有人把我从悬架上说下来:

代码语言:javascript
复制
record Bundle {
   string key;
   array<bytes> msgs;
}

生产者单独序列化一组共享一个键的消息,然后序列化一个捆绑包并发布到一个主题。

一般的扁平器服务由启动参数配置为侦听1...n个包含捆绑包的kafka主题,然后将捆绑的消息盲目转发到配置的输出主题,一次一个。(盲目地表示它从数组中提取字节并将它们放入线上。)

使用案例:

我有响应小操作(更新记录、删除记录等)的服务。有时,我希望需要保证的批操作不会与相同密钥的其他操作交织在一起。

为了实现这一点,我的想法是在每个有问题的服务前面放置一个展平器。普通的,一次性的命令被存储在1项捆绑包中,真正的批处理被捆绑成更大的。

我没有为内部消息使用特定的字段类型,因为我希望能够在所有地方重用展平程序

这有什么意义吗?潜在的缺点?

编辑:

扁平器服务的每个实例将只传递嵌入了schema_ids的最终消费者已知类型的消息。

数组不是特定类型的数组的唯一原因是,我希望能够在多个不同的服务(只是使用不同的环境变量/命令行参数启动)之前重用未更改的扁平器。

EN

回答 1

Stack Overflow用户

发布于 2018-08-24 21:49:50

我将把我的评论转移到一个答案上,因为我认为“说服你离开悬架”是合理的;)

如果您设置了一个Producer<String, GenericRecord> (根据需要更改Avro类),那么您已经有了一个字符串键和Avro字节作为值。这样,您将不需要嵌入任何内容

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

https://stackoverflow.com/questions/51920497

复制
相关文章

相似问题

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