相关疑难解决方法(0)

事件源的关系数据库模式

我试图将域事件存储在postgres数据库中.我在很多方面都不确定,我不想在以后重新设计这个结构,所以我正在寻找具有事件采购经验的人的指导.我目前有下表:

domain events
    version - or event id, integer sequence, helps to maintain order by replays
    type - event type, probably classname with namespace
    aggregate - aggregate id, probably random string for each aggregate
    timestamp - when the event occured
    promoter - the promoter of the event, probably user id
    details - json encoded data about the properties
Run Code Online (Sandbox Code Playgroud)

我不确定的是什么:

  1. 我应该存储域事件的启动器吗?
    它可能有助于找到安全漏洞导致的受损帐户,但我不知道如何通过CRONjob存储什么.
  2. 我应该以什么格式存储事件类型?
    我应该添加一个包含事件类型的表,还是类名呢?
    我应该添加活动组吗?
  3. 我对有界上下文的定义感到困惑.据我所知,每个聚合都可以有多个有界上下文,因此我可以在多个模块中使用单个聚合的不同方面.这听起来不错,因为例如帐户可能与许多事情有关,包括身份验证,授权,用户配置文件,用户帖子,用户合同等......
    我不确定,域事件可以有多个有界上下文,或者只是一个,所以我也应该存储事件上下文?(对于我想重放与单个上下文相关的事件的情况)
    如何在单个聚合类中实现这么多属性,我应该使用某种组合吗?

postgresql domain-driven-design cqrs event-sourcing bounded-contexts

7
推荐指数
1
解决办法
4030
查看次数