通俗易懂,CQRS概念浅析
生活随笔
收集整理的這篇文章主要介紹了
通俗易懂,CQRS概念浅析
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 概述
CQRS(Command Query Responsibility Segration:命令查詢職責隔離)
其中:
Command包括增、刪、改; Query只包含查
它是一種讀寫分離思想的架構
常用解決方案就是對數據庫進行讀寫分離。
讓主數據庫處理事務性的增、刪、改操作,讓從數據庫處理查詢操作,然后主從數據庫之間進行同步。
這只是從DB角度處理了讀寫分離,從業務或者系統層面上來說,讀和寫的邏輯仍然是存放在一起的
CQRS架構:
2. 實現方式
CQRS可以有兩種實現方式。
2.1 CQ兩端數據庫共享,只是在上層代碼上分離。
這樣做的好處是可以讓我們的代碼讀寫分離,更容易維護,而且不存在CQ兩端的數據一致性問題,
因為是共享一個數據庫的。這種架構是非常實用的(也就是我上面畫的那種)
2.2 CQ兩端不僅代碼分離,數據庫也分離,然后Q端數據由C端同步過來。
同步方式有兩種:同步或異步,如果需要CQ兩端的強一致性,則需要用同步;如果能接受CQ兩端數據的最終一致性,則可以使用異步。
C端可以采用EventSourcing(簡稱ES)模式,所有C端的最新數據全部用DomainEvent表達即可
而要查詢顯示用的數據,則從Q端的ReadDB(關系型數據庫)查詢即可。
總結
以上是生活随笔為你收集整理的通俗易懂,CQRS概念浅析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 科普向,什么是 Lua 语言?
- 下一篇: 【解题报告】Leecode911. 在线