가상화ㆍ컨테이너 / 개발자 / 데이터센터 / 클라우드

“FaaS를 넘어 엣지로” 차세대 엣지 서버리스 아키텍처의 현황과 전망

Brecht De Rooms | InfoWorld 2020.02.18
  • 로직 분산(Distributing logic) : 다른 리전에 기능이나 컨테이너를 배치하고 클라이언트를 가장 가까운 곳의 기능이나 컨테이너로 경로를 지정하지 않는 한, 기능은 일반적으로 하나의 데이터센터에 남아 있다. 
 
  • 동적 데이터 분산(Distributing dynamic data) : 데이터를 분산하지 않고 로직만 분산하는 것은 지연 시간이 다른 위치로 이동할 뿐이기 때문에 큰 이점이 없다. 사용자가 백엔드에 더 가까울 수도 있지만 백엔드는 데이터 계층에서 여전히 멀리 떨어져 있다.
 
  • 비용, 구성, 모니터링 : 2개 또는 3개 이상의 지역에 분산된 애플리케이션은 드물다. 일반적으로 그렇게 분산하려면, 추가 비용이나 구성이 필요하며, 여러 지역에서 기능이나 컨테이너를 모니터링해야 하기 때문이다.

서버리스에서 다음 진화는 분산을 더 발전시켜 환경 구성 없이 전달하는 것이다. 이는 로직과 데이터가 전 세계 여러 지역에 분산되어 최종 사용자의 대기 시간을 효과적으로 최소화한다는 것을 의미한다.
 

CDN과 잼스택(Jamstack)

자동 분산을 제공하는 가장 기본적인 형태의 서비스가 있다. 바로 컨텐츠 전송 네트워크, CDN이다. 네틀리파이(Netlify)와 자이트(Zeit) 같은 몇몇 눈에 띄는 업체는 가능한 한 애플리케이션을 사전 생성하고, 동적인 부분은 서버리스 기능과 SaaS API로 처리함으로써 이미 자동 분산을 구현할 수 있다고 본다.

네틀리파이가 ‘잼스택’이라고 이름을 붙인 이 접근방식이 요즘 인기를 얻고 있는데, CDN이 엣지 아키텍처의 이점을 맛볼 수 있도록 해주기 때문이다. 물론, 순전히 서버측 렌더링에 기반을 둔 잼스택에는 한계가 있다. 예를 들어, 새로운 수신 콘텐츠에 대해 빌드를 트리거해야 한다. 이 때문에 잼스택은 빌드 시간이 상당한 고도로 동적인 웹사이트에 적용하는 것이 매우 어렵다. 
 
서버측 렌더링 기반 잼스택은 매우 동적인 웹사이트에서 한계에 부딪힌다. ⓒ Fauna

클라이언트측 하이드레이션(Hydration)과 같은 증분 빌드 개념이 부분적인 해결책을 제공하지만, 결국 기업이 원하는 것은 복잡한 웹사이트가 최종 사용자를 위한 매우 낮은 지연 시간과 즉각적인 액세스가 가능한 새로운 콘텐츠라는 2가지 장점을 갖는 것이다.
 

분산형 서비스의 등장 

많은 IT 전문가가 프런트엔드가 백엔드와 통신하고, 이어서 백엔드는 데이터베이스 및 다른 서비스와 통신하는 아키텍처를 기반으로 성장했다. 백엔드와 데이터베이스는 종종 백엔드와 데이터베이스 사이의 지연 시간을 낮게 유지하기 위해 함께 확장된다. 분산은 가능하지만 번거롭고, 그래서 제한적이다.
 
백엔드와 데이터베이스는 분산할 수 있다. 하지만 매우 성가시며, 그때문에 제한적이다. ⓒ Fauna

미래의 아키텍처에서는 다른 분산 서비스를 이용함으로써 잼스택의 아이디어가 새로운 단계로 발전해 나갈 것이다. 각각의 서비스는 노드가 반드시 다른 서비스와 동일한 데이터센터에 있을 필요가 없는 분산 네트워크가 될 것이다. 대기 시간을 절대적으로 줄이기 위해 프론트엔드가 데이터베이스 및 기타 서비스 네트워크와 통신할 수 있도록 보안 모델을 재고해야 한다.
 
미래 애플리케이션 아키텍처는 분산 서비스 네트워크와 분산 데이터베이스 네트워크, 분산 서비스 백엔드의 이점을 이용하게 될 것이다. ⓒ Fauna

이런 것을 가능하게 하는 서비스에 대해 살펴보자.

분산 서비스 네트워크
알골리아(Algolia)와 센드그리드(SendGrid)와 같은 많은 SaaS 플랫폼은 다른 애플리케이션의 빌딩 블록이 되는 것을 목표로 한다. 이들은 일반적인 백엔드 애플리케이션에서 특정한 우려사항을 제거한 특정 서비스를 개발한다. 이들 중 일부는 스스로를 DSN(Distributed Search Network)이라고 부르는 알골리아와 같은 분산 서비스로 진화하고 있다. 많은 다른 Saas 플랫폼이 뒤따를 것이고, 조만간 SaaS 애플리케이션의 다음 발전 방향으로 분산 서비스 네트워크에 대해 이야기할 가능성이 있다. 

분산 서버리스 데이터베이스
애저 코스모스 DB, 구글 클라우드 스패너 및 파우나DB와 같은 데이터베이스는 종량제 방식의 서버리스 모델을 채택하고, ACID 보증을 통해 뛰어난 분산 환경을 제공한다. 일부 데이터베이스는 보안 계층과 기본적인 GraphQL API를 제공하여 클라이언트 애플리케이션에서 안전하게 사용할 수 있으며, 서버리스 백엔드로 원활하게 작동한다. 보안 계층은 사용자 인터페이스가 백엔드만 사용하는 대신에 데이터베이스와 직접 상호 작용하는 것을 가능하게 한다. 이상적으로 프런트엔드 애플리케이션은 데이터베이스가 거의 로컬에서 실행되고 있는 것처럼 대기 시간이 낮고 ACID 보증이 있는 전세계적으로 분산된 데이터베이스와 통신할 수 있다.

분산 서버리스 엣지 컴퓨팅
클라우드플레어 워커(Cloudflare workers), 스택패스 서버리스 스크립팅(StackPath Serverless Scripting) 같은 새로운 서버리스 기능은 서버리스 기능을 엣지로 밀어내고 있다. 이들 서비스는 지연 시간을 절대적인 줄이기 위해 최종 사용자와 가장 가까운 곳에서 기능을 제공하는 것을 목표로 한다. 클라우드플레어 워커는 194개, 스택패스는 45개 이상의 PoP를 보유하고 있다.

새로운 엣지 아키텍처가 주목을 받는 이유는 분명하다. IaaS에서 엣지 서버리스로의 변환이라는 진화를 고려할 때 한 가지 장애물이 있는데, 바로 동적 데이터 처리 방안이다. 비교적 정적인 데이터를 호스팅하는 아마존 S3와 같은 서비스를 이용하고 있지만, 실제 데이터베이스는 서버리스 경험을 제공하는 데 어려움을 겪고 있다. 매우 일관된 분산 시스템을 구축하는 것이 믿기 어려울 만큼 힘들기 때문이다.
 
클라우드에 있는 서버리스 빌딩 블록은 레고처럼 동작한다. 개발자는 필요한 빌딩 블록을 조합할 수 있고, 확장이나 분산은 걱정하지 않아도 된다. ⓒ Fauna

오늘날, 우리는 내장 보안 기능을 갖춘 서버리스 데이터베이스를 이용하고 있다. 이 데이터베이스는 새로운 종류의 애플리케이션으로 향하는 문을 열었는데, 바로 기본 설정상 전세계적으로 분산된 방식으로 확장하는 애플리케이션이다. 이 문이 열린 후, 많은 개발자가 백엔드의 일부를 마이크로서비스와 API로 대체할 방법을 찾기 시작했고, 많은 SaaS 업체에 새로운 시장을 열어주었다.

최종 목적지는 레고처럼 작동하는 빌딩 블록의 생태계가 될 것이다. 곧 개발자는 필요한 빌딩 블록을 결합하면서 확장이나 분산에 대한 걱정은 더 이상 하지 않을 것이다.  editor@itworld.co.kr

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.