피드로 돌아가기
Dev.toInfrastructure
원문 읽기
Blast Radius 최소화를 통한 무중단 격리 구조, Cell-Based Architecture
Cell-Based Architecture: o por que estamos sempre tentando mitigar riscos e falhas
AI 요약
Context
Microservices의 단순 Horizontal Scaling으로는 Noisy Neighbor 문제와 전역적 장애 전파를 차단하는 Isolation 구현에 한계가 있음. 단일 장애 지점으로 인한 전체 시스템 가용성 저하 및 Deployment 리스크를 해결하기 위한 구조적 접근이 필요함.
Technical Solution
- Application, Infrastructure, Database를 하나의 독립 단위인 Cell로 묶어 전체 Stack을 복제하는 구조 설계
- Tenant_id 기반의 Cell Router를 도입하여 요청을 특정 Cell로 분산시키는 Global Routing 메커니즘 적용
- 개별 Cell 간의 상호 의존성을 완전히 제거하여 특정 Cell 장애가 타 Cell로 전파되지 않는 Blast Radius Containment 구현
- 신규 버전 배포 시 특정 Cell에 먼저 적용 후 점진적으로 확산하는 Natural Canary Deployment 프로세스 구축
- 데이터베이스 Sharding을 넘어 애플리케이션 계층까지 물리적으로 격리하여 Noisy Neighbor 현상을 원천 차단
- 지역별 규제 준수를 위해 물리적 거점을 기반으로 Cell을 배치하는 Structural Compliance 전략 채택
실천 포인트
- 전역 장애 범위를 제한해야 하는 Critical Service 여부 검토 - Tenant_id 기반의 효율적인 Routing Store(Redis, DynamoDB 등) 설계 가능성 분석 - 다수 Cell에 걸친 Schema 변경 및 데이터 마이그레이션을 위한 자동화 파이프라인 구축 상태 확인 - Cell 간 데이터 집계(Aggregation) 필요성 및 이에 따른 쿼리 복잡도 증가분 평가