【发布时间】:2017-04-18 06:02:48
【问题描述】:
我是微服务架构方面的新手,阅读这篇文章:http://microservices.io/patterns/data/event-sourcing.html 以熟悉微服务架构中的事件溯源和数据存储。 我已经阅读了很多关于系统 3 个重要方面的文档:
- 使用事件溯源而不是简单的共享 DB 和 ORM 和 行更新
- 事件是 JAVA 对象。
- 在永久保存数据的情况下 ,我们需要使用 DB(关系型或 noSQL)
这是我的问题:
数据库如何与事件溯源一起出现?我读过 CQRS 模式,但我不明白 CQRS 模式与 事件存储和事件对象?
任何机构都可以为我提供 完整的画面和一组操作发生在所有玩家身上 收集:CQRS 模式,事件溯源(包括事件存储 模块),最后是不同的微服务?
- 在系统中 由许多微服务组成,我们应该有一个事件存储还是 每个微服务都有自己的?还是两者都可以?
- 相同 关于CQRS的问题。这种模式在所有实现 微服务还是只有一个?
- 最后,在使用的情况下 微服务架构,必须只有一个 DB 或 每个微服务都应该有自己的?
如你所见,我已经理解了所有游戏的小片段,但我无法将它们联系在一起组成一个完整的图像。 CQRS 与事件溯源和在数据库中存储数据之间的特别相关性。 例如,我阅读了很多文章:
- https://ookami86.github.io/event-sourcing-in-practice/
- https://msdn.microsoft.com/en-us/library/jj591577.aspx
但在所有这些中都讨论了小玩家。即使是手绘图像也会受到赞赏。
【问题讨论】:
-
CQRS 从根本上说与事件溯源正交。我建议您将它们视为独立的野兽,直到您遇到确定的它们之间相互作用的问题领域。如果发生这种情况,请分别提出明确的问题。
标签: microservices cqrs event-sourcing