2015년 3월 5일 목요일

[SW아키텍처 참조모델]클라우드 시스템 설계 참조모델(BaaS)

‘클라우드’는 웬만해선 들어봤을 친근한 용어이면서도 IT뿐 아니라 다양한 업종에서도 수시로 통용되는 단어이지만 전문가들 사이에서 조차도 그 정확한 정의가 쉽게 내려지지 않는 다소 추상적인 용어 입니다. 한편으로는 계속 꿈틀거리며 그 형체를 만들어가고 있는 포괄적인 개념이라고 할 수 있습니다.
기술 관점에서 클라우드는 하나의 메인프레임을 여러 사람이 나누어 사용하기 시작한 50년대 부터 그 개념이 생겨났다고 할 수 있으며 이후 다양한 가상화 기술과 인터넷 기술의 지속적인 발전에 힘입어 2000년대 초반부터 ‘클라우드 컴퓨팅’이라는 이름으로 형체가 조금씩 드러나기 시작했습니다. 90년 후반에 인터넷 데이터센터(IDC)가 폭발적으로 늘어나고 서버 및 스토리지 강상화 제품들이 속속 출현하는 와중에 스마트폰으로 대변되는 모바일 환경이 일상으로 파고들어온 것이 촉매 역할을 하면서 현재의 클라우드 컴퓨팅이 만들어 졌습니다. 

BaaS 서비스는 오픈된 RestAPI 형태로 서비스 되고 있으며, 모바일의 시장의 양대 OS인 Android와 iOS를 위한 SDK를 기본적으로 지원하고 있습니다. 업체에 따라 자바스크립트를 위한 라이브러리나, 신규 모바일OS나 PC용 어플리케이션 개발을 위한 SDK를 지원하는 곳도 있습니다. 최종 서비스 형태가 API제공 형태로 이루어지므로, API자체가 품질의 척도 이며, 마케팅의 수단이 됩니다. 각 서비스 업체는 상품으로서의 API의 경쟁력을 재고 하기위해서 직관적이고 이해하기 쉬운 웹 또는 PDF형태의 문서 제공 하고 있고, 동영상을 통해 연동 개발이 쉽다는 이미지를 재차 강조하고 있습니다.

BaaS프로바이더의 서비스를 사용해서 빠른 백엔드를 구성할수 있지만, 자체 구축한 백엔드에 비해 단점도 있습니다. 저장되는 모든 데이터는 항상 단말의 호출에 의해서만 저장되기 때문에 트랜젝션이 필요한 여러 데이터들을 하나의 트랜젝션으로 묶어서 처리할수가 없어 이를 감안하여 API를 사용해야하며, 경우에 따라 가비지 데이터가 쌓이거나 데이터 정합성을 보장 할수 없는 시나리오가 생길 수 있음을 감안해야 합니다.

댓글 없음 :

댓글 쓰기