我真的很喜欢事件源的想法。对我来说,主要优点是:
如果您构建微服务而不是使用事件源,则交流变得非常容易。您的组件是分离的,它们要做的就是知道事件存储在哪里。
您知道最简单的事件存储是什么?我只想存储发生在我的应用程序中的事件,并让其他组件看到这些事件,以防新事件来临。
我正在使用Scala
我在apache kafka上有经验,有很多图书馆可以阅读kafka主题(例如akka kafka流)
Apache kafka是一个集群系统。很难部署,设置,这对我来说是最难的部分。我想构建应用程序并使用服务逻辑,而不是设置kafka集群。我听说过vertx及其事件总线,但我还没有尝试过
答案 0 :(得分:1)
事件源与服务之间的通信无关,而是与将数据存储为不可变日志(通常在服务内)有关。对于此用例,Kafka不是一个特别好的选择。阅读this post,了解其中的一些原因。
但是,Kafka 可以与Event Sourcing解决方案搭配使用,以将事件分发给其他服务。
答案 1 :(得分:0)
事件源与工具无关,而与设计有关。您甚至可以使用MySQL进行事件来源。
但是,在工具方面,您可以检查: