2016년 8월 23일 화요일

서버리스(Serverless) 애플리케이션을 위한 코드 관리


최근 들어, 아마존웹서비스(Amazon Web Service), 마이크로소프트 애저(Microsoft Azure) 등의 글로벌 업체는 서버리스 아키텍처를 지원하고 있다 국내에서는 아직 적용 사례를 찾아보기 어렵지만 해외에서는 다양한 적용 사례가 나타나고 있다. 서버가 없는 것처럼 기능에 직접 접근할 수 있기 때문에 서버를 경유하는 방식보다 효율적으로 알려져 있다. 이번 회에서는 글로벌 기업에서 아키텍트로 활동 중인 Kloud Solutions(호주 소재) 유정협 아키텍트를 만나 자세한 사항을 들어본다.

Q: 본격적인 이야기 전에 서버리스에 대한 설명을 부탁 드립니다.

서버리스는 요즘 소프트웨어 아키텍처 세상에서는 아주 핫한 토픽입니다. 책들도 많이 나왔고, 오픈소스 프레임워크도 있고, 수많은 벤더들이 프레임워크를 내놨죠. 게다가 아예 서버리스만을 주제로 하는 컨퍼런스까지 생겼습니다. 서버리스는 서버 단에서 로직이나 상태를 관리하지 않고 특정 이벤트에 반응하는 함수가 실행되는 구조입니다. 이 때, 특정 이벤트는 써드 파티 애플리케이션이나 클라우드 등에서 요청합니다. 서버리스는 서버리스는 서버 단 로직을 주로 개발자가 코딩 하는 전통적인 방법과는 다르게 서버에 상태를 저장하지 않고 돌리는 애플리케이션을 의미하기도 합니다. 이런 애플리케이션은 보통 이벤트 기반으로 작동하고, 써드 파티에 의해 관리됩니다. 이런 방식을 적용하기 위해 FaaS(Functions as a Service)가 있고, AWS 람다(Lamda)가 FaaS계의 가장 인기 있는 구현체지요(그림1). 물론, 다른 것들도 많이 있습니다. 이번에 얘기하는 것에서는 FaaS를 서버리스의 의미로 이해하시면서 들으시면 될 것 같습니다.


<그림1> 서버리스 AWS
출처: Amazon

더보기          

댓글 없음 :

댓글 쓰기