클라우드의 가장 기본 콘셉트는 Virtual Machine, Serverless Computing , Container의 차이점으로부터 시작한다고 해도 과언이 아니다. 이로부터 클라우드 컴퓨팅의 장점이 도출되기 때문이다.
serverless 컴퓨팅 특징
1. 서버의 추상화: 서버리스 컴퓨팅은 실행하는 서버를 추상화한다. 서버 인스턴스를 명시적으로 예약하지 않고 플랫폼(클라우드 제공자)이 해당 기능을 관리한다. 각 함수 실행은 다른 컴퓨팅 인스턴스에서 실행될 수 있다. 서버리스 아키텍처를 통해, 고가용성으로 실행되는 코드를 배포 가능하다.
2. 이벤트 기반 크기 조정: 서버리스 컴퓨팅은 예정된 이벤트에 응답하는 워크로드에 대해 매우 적합합니다. 다음은 이벤트를 트리거하는 종류를 나열하였다.
- 타이머(예: 매일 오전 10시 UTC에 함수를 실행해야 하는 경우).
- HTTP(API 및 웹 훅 시나리오).
- 큐(예: 주문 처리).
전체 애플리케이션을 작성하는 대신 개발자는 함수를 작성하고, 함수에는 트리거 및 바인딩에 관한 코드 및 메타데이터 모두가 포함된다. 플랫폼은 자동으로 함수 실행을 예약하고 예정된 이벤트의 비율에 따라 컴퓨팅 인스턴스의 수를 조정한다. 트리거는 함수가 호출되는 방식을 정의한다. 바인딩은 코드 내에서 서비스에 연결하기 위한 선언적 방식을 제공한다.
3. 마이크로 청구: 기존 컴퓨팅은 웹 사이트 호스팅을 위한 월간 또는 연간 요금 지급과 같이 시간 블록에 대해 요금을 청구한다. 이 청구 방법은 편리하지만 항상 비용 효율적이지는 않는다. 왜냐하면 고객의 웹 사이트에서 하루에 한 번만 방문하는 경우에도 일일 가용성 전체에 대해 지불하게 되기 때문이다. 서버리스 컴퓨팅을 사용하면 코드가 실행되는 시간에 대해서만 비용을 지불하며 활성 함수 실행이 발생하지 않는 경우 요금이 부과되지 않는다. 예를 들어, 코드가 하루에 한 번 2분 동안 실행되는 경우 실행 1회와 컴퓨팅 시간 2분에 대해 요금이 부과됩니다.
Reference
출처 1 : azure.microsoft.com/en-ca/overview/serverless-computing/
출처 2 : docs.microsoft.com/ko-kr/learn/modules/principles-cloud-computing/2-what-is-cloud-computing
'Cloud' 카테고리의 다른 글
[Cloud] Cloud Native Application : Stateless and Stateful Application (0) | 2021.01.14 |
---|