커맨드 쿼리 분리

Jmnote (토론 | 기여)님의 2017년 10월 4일 (수) 13:11 판 (→‎개요)

1 개요

Command Query Responsibility Segregation; CQRS
커맨드 쿼리 책임 분리
  • 전통적 MVC에서는 하나의 모델이 DB 조회·갱신을 모두 담당했으나...
  • CQRS에서는 DB조회를 담당하는 쿼리 모델, DB갱신을 담당하는 커맨드 모델로 분리함
  • 상태조회 쿼리(query), 상태변경 명령(command) 모델로 분리하는 패턴
  • 그에 따라 UI측 서비스 인터페이스도 분리됨

 

 

 

2 장점

  • 변경과 조회 로직이 분리되어 각각의 복잡도는 낮아짐
  • 조회 성능 향상

3 단점

  • 변경과 조회를 따로 구현하므로 코드가 더 많아짐
  • 조회 트래픽이 크지 않다면 딱히 필요없음

4 같이 보기

5 참고

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}