クエリハンドラーとは?
クエリハンドラーとは、どのデータが求められているかを記述したクエリを受け取ってそれを返すコードであり、書き込みは一切行いません。多くの場合、書き込みモデルからではなく、高速な取得のために調整された非正規化された読み取りモデルから読み取ります。コマンドハンドラーと分離することで、読み取りと書き込みがそれぞれ独立してスケールし進化できます。
なぜ重要か
読み取りを副作用のないものに保つことで、cacheしやすく、レプリケートしやすく、最適化しやすくなります。ユーザーが目にするデータの形を、ビジネスルールを強制するために使うモデルからきれいに分離します。
関連ガイド
What Is a Command Handler?A command handler is the component that receives a command requesting a change, validates it, and executes th…
What Is a Read Model?A read model is a data representation optimized for queries and display, often denormalized and kept separate…
What Is CQRS?CQRS separates the model used to change data from the model used to read it, letting writes and reads be desi…