/series/ko/architecture-basics
아키텍처 기초
12편 · 마지막 업데이트 2025.08.30
Architecture Pattern
클라이언트-서버, 레이어드, 파이프-필터 등 대표적인 소프트웨어 아키텍처 패턴을 일상적인 비유와 함께 정리합니다.
Layered Architecture
소프트웨어 아키텍처의 기본 중 하나인 Layered Architecture(계층형 아키텍처)는 시스템을 계층(Layer)로 구성하는 방법 중 하나입니다.
클라이언트-서버 패턴(Client-Server Pattern)
Client-Server 패턴은 클라이언트가 요청을 보내고, 서버가 이를 처리하여 응답하는 구조로, 웹 애플리케이션 등에서 널리 사용되는 분산 시스템 모델입니다.
Pipe Filter Pattern
Pipe-Filter 패턴은 데이터를 여러 개의 필터(처리 단계)를 거쳐 파이프(데이터 흐름)를 통해 전달하는 구조로, 각 필터는 독립적으로 작동하며, 데이터 흐름 중심 시스템에 적합한 패턴입니다.
Model-View-Controller Pattern
Model-View-Controller 패턴은 사용자 인터페이스를 모델(데이터), 뷰(UI), 컨트롤러(로직)로 분리하여 유지보수성과 재사용성을 높이는 UI 중심 설계 패턴입니다.
MVVM Pattern
MVVM(Model-View-ViewModel) 패턴은 사용자 인터페이스(UI)와 비즈니스 로직을 분리하고, 중간에 ViewModel이라는 중재자를 두어 데이터와 UI를 양방향으로 자동 연결해주는 소프트웨어 아키텍처입니다.
MVP Pattern
MVP(Model-View-Presenter) 패턴은 사용자 인터페이스(View)와 비즈니스 로직(Model) 사이를 Presenter가 중재하는 구조로, MVC의 변형 중 하나입니다.
Peer-To-Peer Pattern
Peer-To-Peer 패턴은 모든 노드가 동등한 위치에서 요청과 응답을 동시에 처리할 수 있는 구조로, 중앙 서를 최소화 하여 각 노드가 독립적으로 통신하는 패턴입니다.
Event-Bus Pattern
Event-Bus 패턴은 이벤트 생산자와 소비자가 느슨하게 결합되어 있으며, 이벤트 버스를 통해 메시지를 주고받는 방식으로 실시간 알림, 로그 처리에 유용합니다.
Blackboard Pattern
Blackboard 패턴은 다양한 컴포넌트가 공유된 중앙 데이터 공간(블랙보드)을 통해 협력하여 문제를 해결하는 구조를 가진 패턴으로 음성인식이나 AI 진단 시스템에서 사용됩니다.
Master-Slave Pattern
Master-Slave 패턴은 마스터가 작업을 제어하고, 여러 슬레이브가 실제 처리를 수행하는 구조로, 병렬 처리와 부하 분산에 적합한 패턴입니다.
Broker Pattern
Broker 패턴은 분산된 컴포넌트 간의 통신을 중개자(브로커)를 통해 연결하는 패턴으로, 클라이언트와 서버가 직접 연결되지 않고 중재 계층을 통해 상호작용하는 패턴입니다.