전체 글 62

Aggregator (집계자) 패턴 이란 ?

Aggregator 패턴은 소프트웨어 디자인 패턴 중 하나로, 여러 소스의 데이터를 통합하거나 집계하는 역할을 수행하는 데 사용됩니다. 이 패턴은 특히 데이터의 중앙 집중화와 단순화된 인터페이스 제공에 중점을 둡니다. Aggregator는 일반적으로 여러 개의 독립된 객체, 서비스, 또는 데이터 소스를 수집하고 이 데이터를 클라이언트가 사용하기 쉽도록 조작하거나 처리합니다.1.Aggregator 패턴의 탄생Aggregator 패턴의 기원과 사용 시점은 특정 시기나 인물로 명확히 정의되지 않습니다. 이는 시스템 구축 프로젝트의 거대화 및 소프트웨어 공학과 디자인 패턴의 발전 과정에서 자연스럽게 등장한 개념 중 하나입니다. Aggregator 패턴은 데이터 통합과 시스템 설계의 요구로 인해 유기적으로 발전해..

BFF (Backend for Frontend) 패턴 이란 ?

BFF (Backend For Frontend) 패턴은 마이크로서비스 아키텍처에서 백엔드와 프론트엔드 간의 인터페이스를 효율적으로 구성하기 위해 사용하는 패턴입니다. 이 패턴은 각 클라이언트 유형(웹, 모바일 앱 등)에 특화된 백엔드 인터페이스를 제공하는 방법입니다. BFF 패턴의 주요 목표는 클라이언트별로 필요한 데이터를 최적화하여 제공함으로써 성능을 향상시키기 위하여 주로 사용됩니다. 1. BFF 패턴의 시작과 넷플릭스에서의 활용넷플릭스는 사용자 수가 폭발적으로 증가하면서, 다양한 클라이언트에 맞춘 UI와 성능 최적화가 중요해졌습니다. 예를 들어, 모바일 앱과 웹 브라우저의 요구 사항은 다르며, 동일한 백엔드 API로 모든 클라이언트를 지원하면 비효율적이거나 불필요한 데이터가 전송될 수 있었습니다.이..

Sidecar 패턴 이란 ?

Sidecar 패턴은 마이크로서비스 아키텍처에서 보조 기능을 담당하는 프로세스를 주 애플리케이션과 분리하여 독립적인 프로세스로 실행하는 방법입니다. 이 패턴은 주로 애플리케이션의 주요 기능과 관계없이 추가적인 기능을 제공하는 데 활용됩니다. Sidecar는 '옆에 붙어 다니는 차'라는 뜻으로, 주 프로세스와 함께 배포되지만 별도의 컨테이너나 프로세스로 동작합니다. 주로 Kubernetes 환경에서 자주 사용되며, 이 패턴을 통해 애플리케이션의 확장성과 관리성을 높일 수 있습니다.Source : https://learn.microsoft.com/en-us/azure/architecture/patterns/sidecar 1. Sidecar 패턴의 발전Sidecar 패턴은 마이크로서비스 아키텍처가 확산되면서 ..