CQRS(Command Query Responsibility Segregation)命令查詢職責分離,CQRS架構的核心是將整個系統的架構分割為讀和寫兩部分,從而方便對讀寫進行分開最佳化。CQRS本身只是一個讀寫分離的思想,實現方式可以多種多樣。比如資料儲存不分離,只在程式碼層面分離讀寫。
Command:會改變物件的狀態,但不返回任何資料。
Query:會返回資料,但不改變物件的狀態。
CQRS 主要包含兩大概念,一個是讀寫分離(command & query),一個是事件源(event sourcing),事件源不是必須項。
優點:
當讀寫模型差別較大時,能夠方便分開最佳化。可以從資料驅動轉到任務驅動以及事件驅動。缺點:
最新評論