コマンドクエリ責任分離

情報技術において、コマンドクエリ責任分離(コマンドクエリせきにんぶんり、英語: Command Query Responsibility Segregation, CQRS)とは、コマンドクエリ分離の背景にあるアイデアをサービスのレベルにまで拡張させたシステムアーキテクチャである。[1][2] このようなシステムではコマンドを送信するインターフェースと、クエリを送信するインターフェースを分離する。CQSと同様に、クエリリクエストを処理する際はデータを取得するだけで、(ログ書き込みなどの例外を除き)システムの状態を変更することはない。一方、コマンドリクエストはシステムの状態を変更する。

多くのシステムでは、データモデルの分離まで進める。クエリを処理するために用いられるモデルは一般に"読み取りモデル"と呼ばれ、コマンドを処理するために用いられるモデルは"書き込みモデル"と呼ばれる。

参考文献

編集
  1. ^ Young. “CQRS Documents”. 2012年12月28日閲覧。
  2. ^ Fowler. “CQRS”. 2011年7月14日閲覧。

外部リンク

編集