배경 웹서비스는 DB는 Master-Slave 구조로 설계하고, CRUD 중에서도 보통은 Read 하는 횟수가 많다. 운영하는 서비스의 리뉴얼 해보려고 준비 중인데, 특정시기에 Read가 압도적으로 많아서 slave db를 스케일 아웃이 필요할 때가 있다. 이런 니즈들을 만족시키기 위해서 CQRS 패턴을 적용하는 것이 좋을 것 같아 적용해보려고 한다. CQRS 패턴이란? Command and Query Responsibility Segregation의 약자로써, Command(insert, update, delete)와 Query(select)를 분리하는 것 분리함으로써 DB의 확장성과 성능의 이점을 얻을 수 있고, 사용자에게 조금 더 정합성 높은 데이터를 보여줄 수 있다. DTO를 분리해서 관리하기 때..