1 整体架构介绍

港控/mmm° 2022-11-27 12:09 312阅读 0赞

原文地址:https://www.cnblogs.com/yangecnu/p/Introduction-CQRS.html

什么是CQRS(命令查询分离)

对应更改数据的操作,我们不返回数据,对应查询数据的操作,我们不更改数据
CQRS将系统分为命令与查询两个部分,我们暂且称为 命令项目 查询项目
命令:不返回任何结果(void),但会改变对象的状态。
查询:返回结果,但是不会改变对象的状态

CQRS与数据库

命令项目使用主数据库,用于写入数据
查询项目使用从数据库,用于查收数据

CQRS与架构

命令项目使用领域驱动设计
查询项目使用mvc架构(或其他架构都可以)

CQRS与Event Sourcing

CQRS命令项目需要使用Event Sourcing(事件源)架构才能发挥其优势

CQRS概念

Command(命令):用于描述某种命令的一个类
Command Bus(命令总线):所有发生的命令都应该发送到命令总线上,命令总线根据事件的类型,调用对应的命令处理器,图中没有画出
Command Handler(命令处理器):命令处理器用于处理某种类型的命令,当某种类型的命令被发送到命令总线上时,处理该类型命令的命令处理器为被调用
Event(事件):用于描述某种事件的一个类
Event Bus(事件总线):如果事件发生,应该将其发生到时间总线上,事件总线根据事件的类型,调用对应的事件处理器
Event Handler(事件处理器):用于处理某种事件
Event Store(事件存储):对应概念 Event Sourcing(事件溯源),可以用于事件回放处理,还原指定对象状态

发表评论

表情:
评论列表 (有 0 条评论,312人围观)

还没有评论,来说两句吧...

相关阅读

    相关 shiro权限管理1--------整体介绍

    shiro权限管理框架,已经是第三次进行总结了。走马观花的搭建过,简单的进行了应用。跟着开涛哥的教程做了一遍。感觉可以了。不到半年没用,全交回去了。 随后正自己认真的整理了一

    相关 死磕Tomcat系列(1)——整体架构

    死磕Tomcat系列(1)——整体架构 在许多的高端开发的岗位中都会或多或少有要求面试人员要研究过一些常用中间件源码。这是因为一切的秘密都是藏在源码中,阅读源码能够让我们