- CQRS (Command Query Responsibility Segregation) * CQRS ๋? ๐์ง์ญํ์๋ฉด ๋ช
๋ น๊ณผ ์ฟผ๋ฆฌ์ ์ญํ ์ ๊ตฌ๋ถํ๋ค๋ ๊ฒ์ด๋ค. Create-Insert, Update, Delete ์ ๊ฐ์ด ๋ฐ์ดํฐ๋ฅผ ๋ณ๊ฒฝํ๋ ๊ฒ๊ณผ Select-Read ์ ๊ฐ์ด ๋ฐ์ดํฐ๋ฅผ ์กฐํํ๋ ๊ฒ ๋ ๊ฐ์ง์ ์ฑ
์์ ๋ถ๋ฆฌํ๋ค๋ ๊ฒ์ด๋ค. * ์ ์ฌ์ฉํ ๊น? ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๋(ํน์ ์ฌ์ฉํ๋) ์ ํต์ ์ธ CRUD ์ํคํ
์ณ ๊ธฐ๋ฐ์์ ์์คํ
์ ์ ์ง๋ณด์ํ๋ค ๋ณด๋ฉด, ์ถ๊ฐ์ ์ธ ์๊ตฌ์ฌํญ๊ณผ ์ ์ฑ
์ ๋ณํ๋ค๋ก ์์ฐ์ค๋ฝ๊ฒ ๋ก์ง์์ Domain Model ๋ณต์ก๋๊ฐ ์ฆ๊ฐํ๊ฒ ๋๋ค. ์๊ฐ์ด ๊ฐ ์๋ก ์ ์ง๋ณด์ ๋น์ฉ์ ์ ์ง์ ์ผ๋ก ์ฆ๊ฐํ๊ฒ ๋๋ฉฐ ํด๋น ์์คํ
์ ์ฒซ ๊ธฐํ์๋์๋ ๋ค๋ฅธ ๋ฐฉํฅ์ผ๋ก ๋ณ์ง๋๋ ์ผ์ด์ค๋ฅผ ์ข
์ข
๋ณผ ์ ์๋ค. ๊ทธ๋ ๊ฒ ๋ชจ๋ ์๊ตฌ์ฌ..
[MSA] CQRS ์ด๋ฐ๊ฑฐ์์ด?
- CQRS (Command Query Responsibility Segregation) * CQRS ๋? ๐์ง์ญํ์๋ฉด ๋ช
๋ น๊ณผ ์ฟผ๋ฆฌ์ ์ญํ ์ ๊ตฌ๋ถํ๋ค๋ ๊ฒ์ด๋ค. Create-Insert, Update, Delete ์ ๊ฐ์ด ๋ฐ์ดํฐ๋ฅผ ๋ณ๊ฒฝํ๋ ๊ฒ๊ณผ Select-Read ์ ๊ฐ์ด ๋ฐ์ดํฐ๋ฅผ ์กฐํํ๋ ๊ฒ ๋ ๊ฐ์ง์ ์ฑ
์์ ๋ถ๋ฆฌํ๋ค๋ ๊ฒ์ด๋ค. * ์ ์ฌ์ฉํ ๊น? ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๋(ํน์ ์ฌ์ฉํ๋) ์ ํต์ ์ธ CRUD ์ํคํ
์ณ ๊ธฐ๋ฐ์์ ์์คํ
์ ์ ์ง๋ณด์ํ๋ค ๋ณด๋ฉด, ์ถ๊ฐ์ ์ธ ์๊ตฌ์ฌํญ๊ณผ ์ ์ฑ
์ ๋ณํ๋ค๋ก ์์ฐ์ค๋ฝ๊ฒ ๋ก์ง์์ Domain Model ๋ณต์ก๋๊ฐ ์ฆ๊ฐํ๊ฒ ๋๋ค. ์๊ฐ์ด ๊ฐ ์๋ก ์ ์ง๋ณด์ ๋น์ฉ์ ์ ์ง์ ์ผ๋ก ์ฆ๊ฐํ๊ฒ ๋๋ฉฐ ํด๋น ์์คํ
์ ์ฒซ ๊ธฐํ์๋์๋ ๋ค๋ฅธ ๋ฐฉํฅ์ผ๋ก ๋ณ์ง๋๋ ์ผ์ด์ค๋ฅผ ์ข
์ข
๋ณผ ์ ์๋ค. ๊ทธ๋ ๊ฒ ๋ชจ๋ ์๊ตฌ์ฌ..
2023.03.06