有几个应用程序必须集成在一起,它们必须交换问题。因此,其中一个人会得到问题,然后做一些事情,然后改变这个问题的状态。可能涉及此问题的其他应用程序应获取新信息。这将持续到问题达到最终状态关闭。问题是必须映射问题,因为这些应用程序并不都支持相同的数据格式。
感谢您的建议
答案 0 :(得分:1)
是的,它确实有意义。
Kafka可以通过Kafka Streams API和KSQL进行转换,这是一个基于Kafka Streams构建的流式SQL引擎。
通常Kafka用于较小的消息;要考虑更大内容的一种模式是将其存储在对象存储中(例如S3,或类似的,具体取决于您选择的体系结构),并在Kafka消息中引用指向它的指针。
答案 1 :(得分:0)
你可以这样做。如果您发送整个问题,然后将所有后续更新发布到与包含公共kafka消息密钥(可能是唯一的问题ID号)的Kafka消息相同的问题,那么您可以将kafka主题配置为压缩主题,并且代理将自动删除任何较旧的数据副本以节省磁盘空间。
如果您选择仅发送增量(更改),那么您需要小心保留足够长的保留期,以便在问题仍然打开并发布更新时,初始完整记录永不过期。默认保留期为7天。
是。在Kafka Connect中通过单个消息转换(SMT)或在Kafka Streams中使用本机Streams代码(在Java中)。
您可以为大型邮件配置kafka,但如果它们远大于5或10 MB,那么通常最好遵循声明检查模式并将它们存储在Kafka外部,只需将引用链接发布回外部存储的数据即可消费者可以从Kafka带外检索附件。