전체 글 62

Circuit Breaker 패턴 이란 ?

I. 개요Circuit Breaker 패턴은 소프트웨어 아키텍트이자 마이크로서비스와 관련된 주요 개념들을 소개한 마틴 파울러(Martin Fowler)와 그의 동료 마이클 네이거(Michael Nygard)가 발전시킨 패턴입니다. 이 패턴은 네트워크와 외부 시스템의 의존성이 커지면서 장애가 연쇄적으로 발생할 가능성이 높아지는 상황에서 안정성을 유지하기 위해 소개되었습니다. 마이클 네이거는 그의 저서 **"Release It!"** (2007년 출판)에서 Circuit Breaker 패턴을 구체적으로 설명했습니다. 이 책은 분산 시스템에서 안정성을 높이기 위한 다양한 패턴과 기법들을 다루고 있으며, Circuit Breaker 패턴을 통해 서비스 호출 시 장애 전파를 막고 시스템 전체의 안정성을 유지하는 ..

API Gateway Pattern 이란?

API 게이트웨이 패턴은 특정 개인이나 조직이 공식적으로 발표한 개념이라기보다는, 마이크로서비스 아키텍처가 널리 사용되기 시작하면서 자연스럽게 등장하고 발전한 패턴입니다. 2010년대 초반, 넷플릭스(Netflix)와 같은 대규모 웹 서비스 회사들이 마이크로서비스 아키텍처를 도입하면서 이를 효과적으로 관리하기 위한 다양한 패턴을 연구하고 공유했는데, 그중 하나가 바로 API 게이트웨이 패턴입니다. 넷플릭스는 마이크로서비스 기반 애플리케이션의 클라이언트 요청을 관리하기 위해 자체 API 게이트웨이 솔루션인 **Zuul**을 개발했고, 이는 API 게이트웨이 패턴의 초기 사례 중 하나로 꼽힙니다. 이후 AWS, Microsoft, Google 등 여러 클라우드 제공업체가 API 게이트웨이 서비스를 제공하며 ..

Saga 패턴 이란 ?

Saga 패턴은 1987년에 Hector Garcia-Molina와 Kenneth Salem이 발표했습니다. 이들은 논문 "Sagas"를 통해, 긴 트랜잭션을 효율적으로 처리하기 위한 방법으로 Saga 패턴을 제안했습니다. 이 패턴은 주로 분산 시스템의 트랜잭션 관리에서 사용되며, 트랜잭션을 여러 개의 작은 작업으로 나누고, 실패 시 이를 복구할 수 있는 보상 동작을 사용해 시스템의 일관성을 유지하는 방법을 설명합니다. Garcia-Molina와 Salem의 연구는 데이터베이스 및 분산 시스템의 안정성을 확보하는 방안으로 큰 영향을 미쳤으며, 이후 마이크로서비스 아키텍처가 대두되면서 Saga 패턴이 더욱 주목받게 되었습니다. SAGA 패턴이란 마이크로서비스들끼리 이벤트를 주고 받아 특정 마이크로서비스에서..