我应该如何在 Akka 持久化 (Eventsourcing/CQRS) 中构建我的 Actor?
我的电子商务应用程序中有这些域对象
所以我的问题是我应该如何构建我的 Actors ?与电子商务领域模型相关的选择一个而不是另一个的优缺点是什么?
最佳答案
我认为你的问题更多地是关于你的聚合的边界。
在任何情况下,聚合之间都不应该有层次结构。聚合应该彼此独立。没有父子关系。
根据你的描述。有一个用户聚合可以创建商店并向其中添加产品。
Store 可以是由 User 聚合启动的单独聚合。请注意,用户可以创建 Store 的事实并不意味着他们应该具有父/子关系。更多的是关于访问控制。商店是由用户创建的,只有该用户有权向其中添加产品。
但是,Product 似乎是 Store 聚合内的一个实体。
您的第四个示例“购物车 - 用户可以将其他用户商店中的任何产品添加到购物车”,揭示了完全不同的内容。你有两种用户。创建和管理商店的用户以及给定商店的消费者。它们不一样,应该以不同的方式建模。
尝试对您的业务领域建模,而不要仅仅因为对象相似就尝试重用对象。
关于akka - 我应该如何在 Akka 持久性中构建持久性参与者?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34064031/