CQRS - 彼此内部的多个命令/查询处理程序

Rub*_*man 5 c# cqrs

CQRS中的一个好习惯是在彼此中使用多个查询处理程序和/或命令处理程序吗?或者你应该每个用例只有一个?

  • 命令处理程序中的命令处理程序
  • 命令处理程序中的Queryhandler
  • queryhandler中的Queryhandler
  • queryhandler中的命令处理程序 - >个人,我不会这样做,因为你不会指望查询应该更改数据......正确吗?

all*_*tej 5

CQRS 是一种应用单一职责原则的架构模式,它通过提供两个模型(读取和写入模型)而不是一个来将查询与命令处理分开。因此,如果您彼此使用多个查询处理程序和/或命令处理程序,则该模式的使用将是错误的。

如果您的读取次数非常多,此模式可以帮助您进行扩展。因此,它也不是一种适用于系统的所有有界上下文的架构模式。