EventWave: 긴밀하게 결합된 탄력적 클라우드 애플리케이션을 위한 프로그래밍 모델 및 런타임 지원
Source
Evernote/IFTTT Feedly/EventWave Programming Model and Runtime Support for Tightly-Coupled Elastic Cloud Applications.md
Summary
구글 연구팀이 제안한 EventWave는 클라우드 환경에서 애플리케이션의 탄력적 확장(Elasticity)을 투명하게 지원하기 위한 이벤트 기반 프로그래밍 모델입니다. 개발자는 상태와 계산을 격리된 단위로 설계하여 병렬성을 명시적으로 노출하면, 런타임 시스템이 이를 활용해 리소스 요구사항에 따라 애플리케이션을 동적으로 확장하거나 축소합니다. 기존 분산 애플리케이션 모델이 투명하게 탄력성을 제공하기 어려웠던 점을 해결하며, 마이크로벤치마크와 사례 연구를 통해 효율적이고 확장 가능한 탄력성 제공 능력을 입증했습니다.
Key Points
- 개발자는 탄력성 구현을 고려하지 않고 단순한 순차적 의미(semantics)로 코드를 작성할 수 있음
- 이벤트 기반 모델을 통해 상태(State)와 계산(Computation)을 격리된 단위로 분리하고 프로그램적 병렬성을 노출
- 런타임 시스템이 노출된 병렬성을 기반으로 클라우드 리소스를 동적으로 할당하여 투명하게 탄력성 제공
- 기존 MapReduce 등 제한된 도메인을 넘어 일반적인 분산 애플리케이션에도 적용 가능
- 구현된 시스템을 통해 효율성, 확장성, 투명성을 갖춘 탄력적 클라우드 애플리케이션 실행 가능