我们目前正在对CQRS和事件采购进行一些研究,并找到了两个主要框架来处理这两个问题:Axon Framework和Eventuate。两者都在不断发展,而现在,RBMH repository更积极地开发了Eventuate。
我是GIT克隆了两个示例项目,并得出结论,Eventuate看起来更轻一些,但我认为这是由于与Axon相比缺乏功能。
我徒劳地试图找到这两个框架之间的比较,在Stackoverflow中我也找不到任何框架。有人有一些意见吗?
答案 0 :(得分:11)
作为Axon Framework的原作者,这个答案可能有点偏颇。我也不是Eventuate的专家,虽然我熟悉它的概念。
Axon已经存在了大约7年,从那时起,许多系统都在使用它。似乎Eventuate被设计为SaaS解决方案(使用开源本地安装替代方案),目前在Alpha中。
两个框架似乎都考虑到了不同的目标。在Eventuate专注于事件采购和事件发布的地方,Axon的重点更多地放在消息传递的抽象上,其中消息传递既是命令,事件又是(在后期阶段)查询。它提供了标注事件和命令处理程序的注释。它还允许您以一种使其与框架内部分离的方式设计您的实体。
此抽象允许您“插入”要用作事件存储的任何数据库。 Axon开箱即用,支持JPA,JDBC和MongoDB。据我所知,Eventuate提供了自己的事件存储实现。