Learning
토픽 147 / 192·시스템 설계 및 아키텍처 패턴

아키텍처 패턴

아키텍처 패턴

검증된 아키텍처 문제 해결책의 재사용 가능한 템플릿

특징: 표준화(↑), 의사소통(↑), 상황에 맞는 선택 필요

주요 패턴

  • 계층형(Layered): 수직 계층 분리(Presentation→Business→DB), 관심사 분리, Sinkhole 주의
  • 이벤트 기반: Producer→Broker→Consumer 비동기, 느슨한 결합, 순서 보장 어려움
  • 마이크로서비스: 독립 서비스+API Gateway, 독립 배포/확장, 분산 트랜잭션 복잡
  • 파이프-필터: 데이터 스트림 순차/병렬 처리, 필터 재사용, 상태 공유 어려움
  • 마이크로커널: Core+Plugin 확장, 핵심 안정, 의존성 관리 필요
  • 공간 기반: 인메모리 그리드, 극한 확장성, DB 병목 제거, 비용 높음

선정 기준: 시스템 규모, 확장성, 배포 빈도, 팀 역량, 도메인 복잡도

비교: 아키텍처패턴(시스템 구조/고수준) vs 디자인패턴(코드 구조/저수준)

연관: 디자인 패턴, 아키텍처 스타일