# CQRS 패턴

  • 시스템은 크게 상태 변경과 조회 기능 제공
    • 상태 변경 : 결제 등
    • 조회 : 주문서 조회 등
  • CQRS 패턴은 상태를 변경(Command)하기 위한 모델과 상태를 제공하는 조회(Query)를 위한 모델을 분리하는 패턴을 의미
  • 예를 들어 Order라는 리소스에 대해 Order(상태 변경, 명령), OrderData(조회) 2개의 모델로 나누어서 관리 가능

# CQRS 패턴의 장단점

# 장점

  • 소프트웨어의 유지보수성을 높일 수 있음
  • 모델별로 성능이나 요구사항에 맞는 데이터베이스나 데이터 접근 기술 사용 가능
  • 예를 들어 명령 모델은 트랜잭션이 지원되는 RDB, 조회는 조회 성능이 높은 NoSQL 사용

# 단점

  • 구현 코드가 많음
  • 더 많은 구현 기술이 필요함