CQRS패턴

W·2024년 1월 17일
0

BackEnd & Devops

목록 보기
8/13

CQRS패턴

(Command and Query Responsiblillity Segregation)

정의

데이터베이스에 대한 읽기와 수정, 삭제 작업은 명령 (command)으로, 조회 작업은 조회(query)로 정의하고 두 작업을 분리하는 아키텍처 패턴을 의미합니다. 분리함으로써 각각의 모델이 서로 독립적으로 발전하고 최적화될 수 있도록 합니다.

주요 특징

  1. 모델 분리
    • 시스템은 읽기 모델과 쓰기 모델로 나누어집니다. 읽기 모델은 데이터를 조회하는 데에 최적화되고, 쓰기 모델은 데이터를 변경하는 데에 최적화됩니다.
  2. 명령과 조회 분리
    • 명령은 시스템의 상태를 변경하는 작업이며, 조회는 시스템의 상태를 읽는 작업입니다. 이 두 가지는 서로에게 영향을 주지 않고 독립적으로 동작합니다.
  3. 프로세스의 명시적인 모델링
    • CQRS는 각각의 명령과 조회를 위한 명시적인 모델링을 장려합니다. 명령과 조회는 각각의 비즈니스 프로세스와 요구사항에 따라 모델링됩니다.

대용량 데이터를 다룰때에는 조회작업을 위해서 nosql을

명령작업(수정, 삭제)를 위해서는 정합성보장을 위한 RDB를 쓰는게 적절해 보인다.

profile
타협하는 순간 발전이 없어

0개의 댓글