如何判断Kafka是否适合存储事件?

问题描述 投票:0回答:1

我考虑将Kafka用于一个事件采购项目(有些代理商会将事件通过Kafka传递给特定的处理器......)

由于我没有关于事件采购和Kafka的实践经验,我已经在线完成了一些研究。而且我发现Kafka不适合采购活动(qazxsw poi)。有一个引用:

SQL / NoSQL存储和Kafka作为代理是比Kafka处理这两个角色以创建完整功能完整解决方案更好的选择

有一位Kafka合着者在讲述

Kafka将作为事件采购的日志工作得非常好。它具有容错能力,可扩展到巨大的数据大小,并具有内置的分区模型。

在我的情况下,我仍然无法考虑使用Kafka是否是一个好主意。即使Kafka有话题,我还需要一个活动商店吗?

我想有一个简单的问题列表,我应该问自己,这有助于我决定是单独使用Kafka还是使用Kafka +事件存储。

apache-kafka event-sourcing
1个回答
2
投票

如何判断Kafka是否适合存储事件?

首先,您需要决定您认为“事件采购”的含义。

您可能想查看Martin Fowler撰写的Using Kafka as a (CQRS) Eventstore. Good idea?

需要考虑的一件事是,是否存在需要在事件分区上维护的域不变量。在大多数专用事件存储中,有一些机制可用于确保仅在事件与先前写入的事件一致时才将新事件附加到历史记录中。

在许多事件源解决方案中,您需要许多简短历史记录 - 每个订单履行的历史记录,每个货件,每个流程实例的历史记录 - 以便您可以支持对不同实例的并发写入而不会丢失一致性属性。

如果您需要对这些内容的支持,那么您需要了解Kafka的功能集与它们的对齐情况(与评估任何其他现成的解决方案完全不同)。

© www.soinside.com 2019 - 2024. All rights reserved.