【发布时间】:2021-10-01 00:46:30
【问题描述】:
如何使用事件溯源设计复式记账系统?我读到这是一个适用事件溯源的领域,它对我来说似乎很直观,它存储所有影响分类帐的事件,并根据这些事件在内存中构建分类帐。有关如何构建这样一个系统的任何指示?
【问题讨论】:
-
嗨,您的主要兴趣是复式记账法、事件溯源还是使用内存方法?只是想确保我理解,所以我(我们?)可以专注于你想要的。另外,您对事件溯源的熟悉程度如何?
-
我建议研究领域驱动设计(尤其是围绕分解为聚合的想法)。
-
我的目的是建立一个会计系统,我打算用传统的方式来做一个分类帐表,我很清楚这种方法。我试图寻找传统关系方法的替代方案,并尝试使用内存解决方案,因为分类帐表中的数据将被大量查询以进行分析。当时的想法是拥有一个事件源系统,其中所有将在分类帐中创建条目的事务都可以视为事件,现在我可以在应用程序启动时在内存中重新创建分类帐。我是事件源概念的新手
-
在事件溯源中,某个实体的事件流应该是最终的事实来源。问题是,这个实体是什么。一个帐户?但是一个交易涉及多个。然后我想到的是一个银行分行的交易清单,不管它叫什么。这与事务的定义相匹配,构成了一个严格的序列。
-
交易作为一个事件是我所描绘的。我进行了某种形式的提款,对所有受其影响的帐户的更改将被绑定为交易并作为事件被封存。
标签: architecture cqrs event-sourcing system-design