除Apache Kafka之外,事件采购有哪些替代方案?

时间:2018-11-10 22:31:01

标签: scala apache-kafka vert.x event-sourcing

我真的很喜欢事件源的想法。对我来说,主要优点是:

如果您构建微服务而不是使用事件源,则交流变得非常容易。您的组件是分离的,它们要做的就是知道事件存储在哪里。

您知道最简单的事件存储是什么?我只想存储发生在我的应用程序中的事件,并让其他组件看到这些事件,以防新事件来临。

我正在使用Scala

我在apache kafka上有经验,有很多图书馆可以阅读kafka主题(例如akka kafka流)

Apache kafka是一个集群系统。很难部署,设置,这对我来说是最难的部分。我想构建应用程序并使用服务逻辑,而不是设置kafka集群。我听说过vertx及其事件总线,但我还没有尝试过

2 个答案:

答案 0 :(得分:1)

事件源与服务之间的通信无关,而是与将数据存储为不可变日志(通常在服务内)有关。对于此用例,Kafka不是一个特别好的选择。阅读this post,了解其中的一些原因。

但是,Kafka 可以与Event Sourcing解决方案搭配使用,以将事件分发给其他服务。

答案 1 :(得分:0)

事件源与工具无关,而与设计有关。您甚至可以使用MySQL进行事件来源。

但是,在工具方面,您可以检查:

  • Lagom-我认为这是取代同一团队的Akka,但似乎更容易。
  • EventStore-Greg Young的简单事件存储区