cqrs

    2热度

    2回答

    我已阅读了CQRS上的多个博客,他们都解释说,在写端事件持久存储在事件存储中,并且在请求时,事件将在聚合中检索并重播。 我的问题是为什么在阅读方不需要事件在聚合上重播?

    5热度

    2回答

    事件流中的事件不会影响域状态中的任何聚合吗? 举例来说,如AllCompletedTodosPurged这样的事件,除了通过删除所有完成的待办事项来更改已读取模型以及活动待办事项。

    0热度

    1回答

    在CQRS中,如何确保命令处理程序正在更新写入存储和事务性读取存储? 我不确定这两个步骤是否支持交易? 或者您是否依赖最终的一致性?读取存储的含义将最终更新? 什么是(或一个)使用NServiceBus 5或6做到这一点的常见方法? 在我们的应用程序中,我们有IRepository<T>(Add,Update)用于命令端更新Sql Server数据库。 查询方很简单。实体框架DbContext之上

    0热度

    2回答

    我一直在阅读大量有关CQRS的知识,并理解分离命令(写入)和查询(读取)操作的基本思想。 另一方面,我已经看到几次在命令端的Repository<T>功能FindById(id)方法。 例子: public interface IRepository<T> { void Save(T aggregate); //for add and update void FindById

    3热度

    2回答

    考虑具有许多属性的聚合。例如UserGroup。如果我要发布一个UserGroupCreatedEvent我可以做两两件事: 复制从刚刚创建的用户组的属性,以 UserGroupCreatedEvent并复制它们的值。 OR: 引用新的用户组的UserGroupCreatedEvent 中在许多例子中,像轴突的联系人应用程序,我已经看到了房地产的重复。我想知道为什么,以及如果在现实世界的CQRS应

    1热度

    3回答

    我正在使用具有事件源的CQRS。我有一个实体eg.Form与entityId。现在我必须在这个实体上发送复制命令(CommandName:CopyForm,EventName:FormCopied)因此,整个表单应该被复制并且具有不同的entityId。 所以,要实现这一点,我发送需要复制CopyForm命令的窗体entityId。整个表单从事件存储中加载,同时引发事件我将事件作为FormAdde

    3热度

    1回答

    我正在实现一个具有Akka持久性的CQRS系统,并且我试图理解CQRS的请求响应位。 关于如何向客户端发送响应,SO上的答案很少,this article也提到了一些很好的模式。但是,不要泛泛而谈使用大词汇,有人可以解释我应该如何将响应发回CQRS中的客户端以用于以下简单用例。 使用情况 假设用户是显示用户配置文件,显示以下信息的页面上 用户名 地址 电话号码 在我的系统中,我有一个A.每个用户存

    4热度

    1回答

    我应该如何使用查询模型来组合/检查某些聚合信息,如在域服务中?我在很多例子中都看到了这一点。但是,如果查询数据由于域事件而异步传播呢? 示例:具有用户聚合和消息聚合的消息板(解耦用于较小的trx边界)。 当用户被标记删除时,他的所有消息也需要被标记删除。这将通过处理MessageEventHandler类型的服务中的UserMarkedDeletedEvent来完成。现在这个服务需要为每个消息使用

    1热度

    1回答

    我试图在我的应用程序的某些部分实现CQRS模型,其余部分以CRUD风格处理。在写入端,当我在命令处理程序中发布命令时,我将加载聚合并生成必要事件并将它们存储在EventStore中,并将发布这些事件以创建/更新读取模型。我的问题是 在命令处理程序中,我可以加载CRUD处理的实体/模型,同时处理生成任何事件/验证请求的命令? 这里EventStore意味着它可以在内存中的事件队列/任何类型的数据库,

    0热度

    1回答

    我检查了这些帖子,但没有找到一个合适的答案: CQRS: Read model built on demand? CQRS - The query side CQRS: business logic on the query side 我被基于CQRS的架构困住了。我知道查询端应该有一个精简的数据访问层,但在我的项目中,我需要根据来自其他域对象的元数据调整查询。 在互联网上的几篇文章中,报表数据库