写点什么

CQRS 架构

  • 2022 年 5 月 08 日
  • 本文字数:597 字

    阅读完需:约 2 分钟

人们用于与信息系统进行交互的主流方法是将其视为 CRUD 数据存储。我们具有某种记录结构的思维模型,可以在完成处理后:


  • 创建新记录

  • 读取记录

  • 更新现有记录

  • 删除记录


最简单情况下,我们的交互都是关于存储和检索这些记录。随着我们的需求变得越来越复杂,可能希望


  • 以与记录存储不同的方式查看信息,也许将多个记录折叠成一个记录,或者通过组合不同位置的信息来形成虚拟记录

  • 更新方面,我们可能会发现验证规则,这些规则仅允许存储某些数据组合,甚至可能推断出与我们提供的数据不同的数据


发生这种情况时,我们开始看到信息的多种表示形式。当用户与信息交互时,他们使用该信息的各种表示形式,每个表示形式都是不同的表示形式。


开发人员通常会构建自己的概念模型,以用来操纵模型的核心元素。如果使用域模型,则通常是域的概念表示。通常,还应使持 《一线大厂 Java 面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》无偿开源 威信搜索公众号【编程进阶路】 久性存储尽可能接近概念模型。表示形式的多层结构可能会变得非常复杂,但是当人们这样做时,他们仍然将其解析为单个概念表示,该概念表示充当所有演示之间的概念整合点。


CQRS 引入的更改是将概念模型拆分为单独的模型以进行更新和显示,按照 CommandQuerySeparation 的词汇分别称为 Command 和 Query。这样做的理由是,对于许多问题,尤其是在更复杂的领域中,使用相同的命令和查询概念模型会导致更复杂的模型,但效果却不佳。

用户头像

还未添加个人签名 2022.04.13 加入

还未添加个人简介

评论

发布
暂无评论
CQRS架构_Java_爱好编程进阶_InfoQ写作社区