Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

아키텍처 점검 #24

Merged
merged 3 commits into from
Jul 4, 2024
Merged

아키텍처 점검 #24

merged 3 commits into from
Jul 4, 2024

Conversation

wanniDev
Copy link
Owner

@wanniDev wanniDev commented Jul 4, 2024

CQRS
단순히, 읽기/쓰기 모델을 분리하는 것이 아니라, 사용자 인터페이스와 직접 닿아있는 프레젠테이션 계층의 dto와 비즈니스로직들의 조합을 통해 서비스를 제공하는 애플리케이션 계층의 dto의 분리하는 것이 핵심
-> 책임과 의존을 분리하여, 유지보수 효율을 높이는 것이 목적
-> 이러한 분리는 계층간의 결합도를 줄여 계층의 구조 변경에 대한 영향범위를 줄임 (ex. rest api -> graphQL or GRPC 변경)

EventBroker
image

출처: https://towardsaws.com/event-driven-architectures-on-aws-1b52b7886a83

Event Broker는 이벤트 드리븐 아키텍처(EDA, Event Driven Architecture)의 구성요소로서, 이벤트의 생성과 소비를 분리하여 서로 비동기로 동작할때 각 이벤트를 중재해주는 역할을 맡는다.
-> 일반적인 MVC 구조에서는 요청과 응답을 동기적으로 동작한다. 간혹 요청을 처리하는 중에 처리시간이 긴 작업이 섞여있음
-> EDA는 처리시간은 길지만 응답 메세지에는 반영하지 않아도 되는 작업을 비동기로 분리시킬때 좀 더 유연한 방법을 제시해준다.

@wanniDev wanniDev self-assigned this Jul 4, 2024
@wanniDev wanniDev merged commit 819aa8b into main Jul 4, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant