목록 보기
아키텍처에 대한 고민은 처음이라
아키텍처

아키텍처에 대한 고민은 처음이라

당근마켓
당근마켓
2024년 7월 25일

두줄요약

계층형과 육각형 아키텍처를 실제 서비스 사례로 비교하며 적용 기준을 설명했습니다. 도메인 변화와 외부 의존성이 큰 환경에서는 육각형 아키텍처가 유리하다고 정리했습니다.

핵심 내용

  • 계층형 아키텍처와 육각형 아키텍처를 실제 업무 사례로 비교한 글
  • 기능만 단순한 소프트웨어에는 단일 진입점 수준의 단순 구조도 가능하나, 도메인과 외부 환경 변화가 커지면 아키텍처 고민이 필요
  • 번역 봇 사례에서는 웹·도메인·인프라로 나눈 계층형 구조를, 영상 플랫폼 사례에서는 포트와 어댑터를 둔 육각형 구조를 적용

선택 이유

  • 계층형 아키텍처는 역할 분리가 명확해 새 기능과 변경 지점을 직관적으로 파악하기 쉬움
  • 육각형 아키텍처는 도메인이 외부 프로바이더 변화에 덜 흔들리도록 의존성을 역전시키는 데 유리
  • 공통 서비스처럼 여러 외부 인프라를 통일된 인터페이스로 제공해야 하는 상황에 적합

장단점

  • 계층형 아키텍처는 이해하기 쉽지만 비즈니스 로직이 인프라 계층으로 몰리기 쉬움
  • 육각형 아키텍처는 외부 변경의 영향도를 줄이고 OCP에 부합하지만 구조와 관계를 처음 이해하기 어려움
  • 복잡도 증가로 인해 계층 침범 유혹이 생길 수 있음

적용해볼 점

  • 도메인 변화 가능성과 외부 의존성의 개수를 먼저 분석한 뒤 아키텍처를 선택할 필요
  • 새로운 프로바이더나 인터페이스 추가 가능성을 고려해 포트와 어댑터로 경계를 나누는 방식 검토
  • 아키텍처 결정과 하위호환성 이슈는 ADR 같은 문서로 관리하는 방식 참고 가능

댓글 0

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...