創屋ぷれす

コマンド クエリ責務分離 (CQRS) パターン

CQRS(Command and Query Responsibility Segregation)とは
データの読取と、更新操作をするモデルを分離するという、プログラムの構造を指します。

一般的なCRUDでは、一つのモデルでデータに対する操作を行いますが、
これを機能ごとに分けることで、パフォーマンスやセキュリティを向上させる狙いがあります。

読取操作をクエリ
更新操作をコマンド
と考えます。

クエリは、取得のみでシステムの状態を変更しない(副作用なし)
コマンドは、システムの状態を変更 取得はしない

基本的にはオブジェクト指向の考え方なのですが、
それをアーキテクチャに適用したというイメージです。

Comments are closed.