前端之家收集整理的这篇文章主要介绍了
领域驱动设计 – 事件采购:触发他人和重建状态的事件,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
通过从EventStore重播事件来重建模型,特别是当事件可能触发其他事件发生时,我正在努力
解决应该发生的情况.
例如,已经进行了10次购买的用户应该升格为首选客户,并收到一封电子邮件,提供他们某些促销活动.
我们显然不希望每次重建该用户的模型时发送电子邮件,但是当我们重播第10个PurchaseMadeEvent时,我们如何避免发生这种情况?
事件
链接可能非常棘手,很容易失去控制,所以我尽可能地避免.例如在您描述的场景中,我会提出一个UserPromotedEvent(甚至可能使用PromoteUserCommand),但是我不会考虑将电子
邮件的实际/实体发送作为我的域的一部分.相反,我将为UserPromotedEvent创建额外的处理程序/反规范化程序,它可以
注册需要发送电子
邮件和一些额外的检查.之后,另一个进程将收集尚未处理的电子
邮件的信息并发送它们.这种
方法将减轻不完全可访问/可扩展的电子
邮件网关可能出现的问题.
更一般来说 – 事件链接的需要经常表明您应该考虑为该过程实施Saga.
原文链接:https://www.f2er.com/html/229695.html